; ModuleID = 'rust_code/src/t3a-raw.bc'
source_filename = "2kb1f8ziy6ussdwz"
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

%"core::fmt::Formatter" = type { [0 x i64], { i64, i64 }, [0 x i64], { i64, i64 }, [0 x i64], { {}*, [3 x i64]* }, [0 x i32], i32, [0 x i32], i32, [0 x i8], i8, [7 x i8] }
%"core::fmt::builders::DebugList" = type { [0 x i64], %"core::fmt::builders::DebugInner", [0 x i64] }
%"core::fmt::builders::DebugInner" = type { [0 x i64], %"core::fmt::Formatter"*, [0 x i8], i8, [0 x i8], i8, [6 x i8] }
%"alloc::vec::Vec<i32>" = type { [0 x i64], { i32*, i64 }, [0 x i64], i64, [0 x i64] }
%"core::fmt::::Opaque" = type {}
%"core::fmt::Arguments" = type { [0 x i64], { [0 x { [0 x i8]*, i64 }]*, i64 }, [0 x i64], { i64*, i64 }, [0 x i64], { [0 x { i8*, i8* }]*, i64 }, [0 x i64] }
%"core::option::Option<usize>::Some" = type { [1 x i64], i64, [0 x i64] }
%"core::ptr::Repr<i32>" = type { [2 x i64] }
%"core::marker::PhantomData<i32>" = type {}
%"core::panic::Location" = type { [0 x i64], { [0 x i8]*, i64 }, [0 x i32], i32, [0 x i32], i32, [0 x i32] }
%"alloc::alloc::Global" = type {}
%"core::option::Option<(core::ptr::non_null::NonNull<u8>, core::alloc::layout::Layout)>" = type { [0 x i64], {}*, [2 x i64] }
%"core::option::Option<(core::ptr::non_null::NonNull<u8>, core::alloc::layout::Layout)>::Some" = type { [0 x i64], { [0 x i64], i8*, [0 x i64], { i64, i64 }, [0 x i64] }, [0 x i64] }
%"core::alloc::AllocErr" = type {}
%"unwind::libunwind::_Unwind_Exception" = type { [0 x i64], i64, [0 x i64], void (i32, %"unwind::libunwind::_Unwind_Exception"*)*, [0 x i64], [6 x i64], [0 x i64] }
%"unwind::libunwind::_Unwind_Context" = type { [0 x i8] }

@vtable.0 = private unnamed_addr constant { void (i8**)*, i64, i64, i32 (i8**)*, i32 (i8**)*, i32 (i8**)* } { void (i8**)* @_ZN4core3ptr13drop_in_place17hb53d219ce4265296E, i64 8, i64 8, i32 (i8**)* @"_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h37f61e5b7249be66E", i32 (i8**)* @"_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h37f61e5b7249be66E", i32 (i8**)* @"_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h3bb9379a37e9b5e3E" }, align 8, !dbg !0
@vtable.1 = private unnamed_addr constant { void (i32**)*, i64, i64, i1 (i32**, %"core::fmt::Formatter"*)* } { void (i32**)* @_ZN4core3ptr13drop_in_place17hf8c5d4897aee99e4E, i64 8, i64 8, i1 (i32**, %"core::fmt::Formatter"*)* @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h0fd8c52619dd8f0aE" }, align 8, !dbg !14
@alloc27 = private unnamed_addr constant <{ [41 x i8] }> <{ [41 x i8] c"attempt to create unaligned or null slice" }>, align 1
@alloc28 = private unnamed_addr constant <{ [112 x i8] }> <{ [112 x i8] c"/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libcore/macros/mod.rs" }>, align 1
@alloc29 = private unnamed_addr constant <{ i8*, [16 x i8] }> <{ i8* getelementptr inbounds (<{ [112 x i8] }>, <{ [112 x i8] }>* @alloc28, i32 0, i32 0, i32 0), [16 x i8] c"p\00\00\00\00\00\00\00\0A\00\00\00\09\00\00\00" }>, align 8
@alloc30 = private unnamed_addr constant <{ [64 x i8] }> <{ [64 x i8] c"attempt to create slice covering at least half the address space" }>, align 1
@alloc31 = private unnamed_addr constant <{ [110 x i8] }> <{ [110 x i8] c"/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/liballoc/raw_vec.rs" }>, align 1
@alloc32 = private unnamed_addr constant <{ i8*, [16 x i8] }> <{ i8* getelementptr inbounds (<{ [110 x i8] }>, <{ [110 x i8] }>* @alloc31, i32 0, i32 0, i32 0), [16 x i8] c"n\00\00\00\00\00\00\00\E7\00\00\00\1C\00\00\00" }>, align 8
@str.2 = internal constant [33 x i8] c"attempt to multiply with overflow"
@alloc1 = private unnamed_addr constant <{ [3 x i8] }> <{ [3 x i8] c"v: " }>, align 1
@alloc2 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"\0A" }>, align 1
@alloc3 = private unnamed_addr constant <{ i8*, [8 x i8], i8*, [8 x i8] }> <{ i8* getelementptr inbounds (<{ [3 x i8] }>, <{ [3 x i8] }>* @alloc1, i32 0, i32 0, i32 0), [8 x i8] c"\03\00\00\00\00\00\00\00", i8* getelementptr inbounds (<{ [1 x i8] }>, <{ [1 x i8] }>* @alloc2, i32 0, i32 0, i32 0), [8 x i8] c"\01\00\00\00\00\00\00\00" }>, align 8
@anon.510a20d41a8d11441005547d3619066c.0 = private unnamed_addr constant <{ i8*, [0 x i8] }> <{ i8* bitcast (<{ i8*, [8 x i8], i8*, [8 x i8] }>* @alloc3 to i8*), [0 x i8] zeroinitializer }>, align 8
@__rustc_debug_gdb_scripts_section__ = linkonce_odr unnamed_addr constant [34 x i8] c"\01gdb_load_rust_pretty_printers.py\00", section ".debug_gdb_scripts", align 1

; Function Attrs: nonlazybind uwtable
define hidden i64 @_ZN3std2rt10lang_start17h6d4a7dc0ad4c0476E(void ()* nonnull %main, i64 %argc, i8** %argv) unnamed_addr #0 !dbg !48 {
start:
  %argv.dbg.spill = alloca i8**, align 8
  %argc.dbg.spill = alloca i64, align 8
  %main.dbg.spill = alloca void ()*, align 8
  %_7 = alloca i8*, align 8
  store void ()* %main, void ()** %main.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata void ()** %main.dbg.spill, metadata !56, metadata !DIExpression()), !dbg !62
  store i64 %argc, i64* %argc.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i64* %argc.dbg.spill, metadata !57, metadata !DIExpression()), !dbg !63
  store i8** %argv, i8*** %argv.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i8*** %argv.dbg.spill, metadata !58, metadata !DIExpression()), !dbg !64
  %0 = bitcast i8** %_7 to void ()**, !dbg !65
  store void ()* %main, void ()** %0, align 8, !dbg !65
  %_4.0 = bitcast i8** %_7 to {}*, !dbg !66
  %1 = call i64 @_ZN3std2rt19lang_start_internal17h09e25702c8631a09E({}* nonnull align 1 %_4.0, [3 x i64]* noalias readonly align 8 dereferenceable(24) bitcast ({ void (i8**)*, i64, i64, i32 (i8**)*, i32 (i8**)*, i32 (i8**)* }* @vtable.0 to [3 x i64]*), i64 %argc, i8** %argv), !dbg !67
  br label %bb1, !dbg !67

bb1:                                              ; preds = %start
  ret i64 %1, !dbg !68
}

; Function Attrs: nonlazybind uwtable
define internal i32 @"_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h37f61e5b7249be66E"(i8** noalias readonly align 8 dereferenceable(8) %_1) unnamed_addr #0 !dbg !69 {
start:
  %_1.dbg.spill = alloca i8**, align 8
  store i8** %_1, i8*** %_1.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i8*** %_1.dbg.spill, metadata !74, metadata !DIExpression(DW_OP_deref)), !dbg !75
  %0 = bitcast i8** %_1 to void ()**, !dbg !76
  %_3 = load void ()*, void ()** %0, align 8, !dbg !76, !nonnull !4
  call void %_3(), !dbg !76
  br label %bb1, !dbg !76

bb1:                                              ; preds = %start
  %1 = call i32 @"_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h4bad777fd2d9aef6E"(), !dbg !76
  br label %bb2, !dbg !76

bb2:                                              ; preds = %bb1
  ret i32 %1, !dbg !77
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal i32 @_ZN3std3sys4unix7process14process_common8ExitCode6as_i3217hc2578c04f095b037E(i8* noalias readonly align 1 dereferenceable(1) %self) unnamed_addr #1 !dbg !78 {
start:
  %self.dbg.spill = alloca i8*, align 8
  store i8* %self, i8** %self.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i8** %self.dbg.spill, metadata !91, metadata !DIExpression()), !dbg !92
  %_2 = load i8, i8* %self, align 1, !dbg !93
  %0 = zext i8 %_2 to i32, !dbg !93
  ret i32 %0, !dbg !94
}

; Function Attrs: nonlazybind uwtable
define internal zeroext i1 @"_ZN48_$LT$$u5b$T$u5d$$u20$as$u20$core..fmt..Debug$GT$3fmt17h39bc7f0a6d42a2c4E"([0 x i32]* noalias nonnull readonly align 4 %self.0, i64 %self.1, %"core::fmt::Formatter"* align 8 dereferenceable(64) %f) unnamed_addr #0 !dbg !95 {
start:
  %f.dbg.spill = alloca %"core::fmt::Formatter"*, align 8
  %self.dbg.spill = alloca { [0 x i32]*, i64 }, align 8
  %_6 = alloca %"core::fmt::builders::DebugList", align 8
  %0 = getelementptr inbounds { [0 x i32]*, i64 }, { [0 x i32]*, i64 }* %self.dbg.spill, i32 0, i32 0
  store [0 x i32]* %self.0, [0 x i32]** %0, align 8
  %1 = getelementptr inbounds { [0 x i32]*, i64 }, { [0 x i32]*, i64 }* %self.dbg.spill, i32 0, i32 1
  store i64 %self.1, i64* %1, align 8
  call void @llvm.dbg.declare(metadata { [0 x i32]*, i64 }* %self.dbg.spill, metadata !142, metadata !DIExpression()), !dbg !146
  store %"core::fmt::Formatter"* %f, %"core::fmt::Formatter"** %f.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata %"core::fmt::Formatter"** %f.dbg.spill, metadata !143, metadata !DIExpression()), !dbg !147
  call void @_ZN4core3fmt9Formatter10debug_list17h08201c2a736b664eE(%"core::fmt::builders::DebugList"* noalias nocapture sret dereferenceable(16) %_6, %"core::fmt::Formatter"* align 8 dereferenceable(64) %f), !dbg !148
  br label %bb1, !dbg !148

bb1:                                              ; preds = %start
  %2 = call { i32*, i32* } @"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$4iter17h784389d7728d23b7E"([0 x i32]* noalias nonnull readonly align 4 %self.0, i64 %self.1), !dbg !149
  %_8.0 = extractvalue { i32*, i32* } %2, 0, !dbg !149
  %_8.1 = extractvalue { i32*, i32* } %2, 1, !dbg !149
  br label %bb2, !dbg !149

bb2:                                              ; preds = %bb1
  %_4 = call align 8 dereferenceable(16) %"core::fmt::builders::DebugList"* @_ZN4core3fmt8builders9DebugList7entries17had1afd429741e4d2E(%"core::fmt::builders::DebugList"* align 8 dereferenceable(16) %_6, i32* nonnull %_8.0, i32* %_8.1), !dbg !148
  br label %bb3, !dbg !148

bb3:                                              ; preds = %bb2
  %3 = call zeroext i1 @_ZN4core3fmt8builders9DebugList6finish17h0bd8e1f91de79e72E(%"core::fmt::builders::DebugList"* align 8 dereferenceable(16) %_4), !dbg !148
  br label %bb4, !dbg !148

bb4:                                              ; preds = %bb3
  ret i1 %3, !dbg !150
}

; Function Attrs: nonlazybind uwtable
define internal { i8*, i8* } @_ZN4core3fmt10ArgumentV13new17h4ba1af7bed8ead9eE(%"alloc::vec::Vec<i32>"* noalias readonly align 8 dereferenceable(24) %x, i1 (%"alloc::vec::Vec<i32>"*, %"core::fmt::Formatter"*)* nonnull %f) unnamed_addr #0 !dbg !151 {
start:
  %0 = alloca %"core::fmt::::Opaque"*, align 8
  %1 = alloca i1 (%"core::fmt::::Opaque"*, %"core::fmt::Formatter"*)*, align 8
  %f.dbg.spill = alloca i1 (%"alloc::vec::Vec<i32>"*, %"core::fmt::Formatter"*)*, align 8
  %x.dbg.spill = alloca %"alloc::vec::Vec<i32>"*, align 8
  %2 = alloca { i8*, i8* }, align 8
  store %"alloc::vec::Vec<i32>"* %x, %"alloc::vec::Vec<i32>"** %x.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata %"alloc::vec::Vec<i32>"** %x.dbg.spill, metadata !192, metadata !DIExpression()), !dbg !196
  store i1 (%"alloc::vec::Vec<i32>"*, %"core::fmt::Formatter"*)* %f, i1 (%"alloc::vec::Vec<i32>"*, %"core::fmt::Formatter"*)** %f.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i1 (%"alloc::vec::Vec<i32>"*, %"core::fmt::Formatter"*)** %f.dbg.spill, metadata !193, metadata !DIExpression()), !dbg !197
  %3 = bitcast i1 (%"core::fmt::::Opaque"*, %"core::fmt::Formatter"*)** %1 to i1 (%"alloc::vec::Vec<i32>"*, %"core::fmt::Formatter"*)**, !dbg !198
  store i1 (%"alloc::vec::Vec<i32>"*, %"core::fmt::Formatter"*)* %f, i1 (%"alloc::vec::Vec<i32>"*, %"core::fmt::Formatter"*)** %3, align 8, !dbg !198
  %_3 = load i1 (%"core::fmt::::Opaque"*, %"core::fmt::Formatter"*)*, i1 (%"core::fmt::::Opaque"*, %"core::fmt::Formatter"*)** %1, align 8, !dbg !198, !nonnull !4
  br label %bb1, !dbg !198

bb1:                                              ; preds = %start
  %4 = bitcast %"core::fmt::::Opaque"** %0 to %"alloc::vec::Vec<i32>"**, !dbg !199
  store %"alloc::vec::Vec<i32>"* %x, %"alloc::vec::Vec<i32>"** %4, align 8, !dbg !199
  %_5 = load %"core::fmt::::Opaque"*, %"core::fmt::::Opaque"** %0, align 8, !dbg !199, !nonnull !4
  br label %bb2, !dbg !199

bb2:                                              ; preds = %bb1
  %5 = bitcast { i8*, i8* }* %2 to %"core::fmt::::Opaque"**, !dbg !200
  store %"core::fmt::::Opaque"* %_5, %"core::fmt::::Opaque"** %5, align 8, !dbg !200
  %6 = getelementptr inbounds { i8*, i8* }, { i8*, i8* }* %2, i32 0, i32 1, !dbg !200
  %7 = bitcast i8** %6 to i1 (%"core::fmt::::Opaque"*, %"core::fmt::Formatter"*)**, !dbg !200
  store i1 (%"core::fmt::::Opaque"*, %"core::fmt::Formatter"*)* %_3, i1 (%"core::fmt::::Opaque"*, %"core::fmt::Formatter"*)** %7, align 8, !dbg !200
  %8 = getelementptr inbounds { i8*, i8* }, { i8*, i8* }* %2, i32 0, i32 0, !dbg !201
  %9 = load i8*, i8** %8, align 8, !dbg !201, !nonnull !4
  %10 = getelementptr inbounds { i8*, i8* }, { i8*, i8* }* %2, i32 0, i32 1, !dbg !201
  %11 = load i8*, i8** %10, align 8, !dbg !201, !nonnull !4
  %12 = insertvalue { i8*, i8* } undef, i8* %9, 0, !dbg !201
  %13 = insertvalue { i8*, i8* } %12, i8* %11, 1, !dbg !201
  ret { i8*, i8* } %13, !dbg !201
}

; Function Attrs: nonlazybind uwtable
define internal align 8 dereferenceable(16) %"core::fmt::builders::DebugList"* @_ZN4core3fmt8builders9DebugList7entries17had1afd429741e4d2E(%"core::fmt::builders::DebugList"* align 8 dereferenceable(16) %self, i32* nonnull %entries.0, i32* %entries.1) unnamed_addr #0 personality i32 (i32, i32, i64, %"unwind::libunwind::_Unwind_Exception"*, %"unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality !dbg !202 {
start:
  %__next.dbg.spill = alloca i32*, align 8
  %val.dbg.spill = alloca i32*, align 8
  %0 = alloca { i8*, i32 }, align 8
  %entries.dbg.spill = alloca { i32*, i32* }, align 8
  %self.dbg.spill = alloca %"core::fmt::builders::DebugList"*, align 8
  %_20 = alloca i8, align 1
  %entry = alloca i32*, align 8
  %_8 = alloca i32*, align 8
  %iter = alloca { i32*, i32* }, align 8
  store %"core::fmt::builders::DebugList"* %self, %"core::fmt::builders::DebugList"** %self.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata %"core::fmt::builders::DebugList"** %self.dbg.spill, metadata !231, metadata !DIExpression()), !dbg !244
  %1 = getelementptr inbounds { i32*, i32* }, { i32*, i32* }* %entries.dbg.spill, i32 0, i32 0
  store i32* %entries.0, i32** %1, align 8
  %2 = getelementptr inbounds { i32*, i32* }, { i32*, i32* }* %entries.dbg.spill, i32 0, i32 1
  store i32* %entries.1, i32** %2, align 8
  call void @llvm.dbg.declare(metadata { i32*, i32* }* %entries.dbg.spill, metadata !232, metadata !DIExpression()), !dbg !245
  call void @llvm.dbg.declare(metadata { i32*, i32* }* %iter, metadata !233, metadata !DIExpression()), !dbg !246
  call void @llvm.dbg.declare(metadata i32** %entry, metadata !239, metadata !DIExpression()), !dbg !247
  store i8 0, i8* %_20, align 1, !dbg !248
  %3 = call { i32*, i32* } @"_ZN63_$LT$I$u20$as$u20$core..iter..traits..collect..IntoIterator$GT$9into_iter17hbb686c5e7d86cbdeE"(i32* nonnull %entries.0, i32* %entries.1), !dbg !249
  %_4.0 = extractvalue { i32*, i32* } %3, 0, !dbg !249
  %_4.1 = extractvalue { i32*, i32* } %3, 1, !dbg !249
  br label %bb2, !dbg !249

bb1:                                              ; preds = %bb4
  %4 = bitcast { i8*, i32 }* %0 to i8**, !dbg !250
  %5 = load i8*, i8** %4, align 8, !dbg !250
  %6 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %0, i32 0, i32 1, !dbg !250
  %7 = load i32, i32* %6, align 8, !dbg !250
  %8 = insertvalue { i8*, i32 } undef, i8* %5, 0, !dbg !250
  %9 = insertvalue { i8*, i32 } %8, i32 %7, 1, !dbg !250
  resume { i8*, i32 } %9, !dbg !250

bb2:                                              ; preds = %start
  %10 = getelementptr inbounds { i32*, i32* }, { i32*, i32* }* %iter, i32 0, i32 0, !dbg !249
  store i32* %_4.0, i32** %10, align 8, !dbg !249
  %11 = getelementptr inbounds { i32*, i32* }, { i32*, i32* }* %iter, i32 0, i32 1, !dbg !249
  store i32* %_4.1, i32** %11, align 8, !dbg !249
  br label %bb3, !dbg !251

bb3:                                              ; preds = %bb12, %bb2
  %12 = invoke align 4 dereferenceable_or_null(4) i32* @"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99bcc143fdaa2301E"({ i32*, i32* }* align 8 dereferenceable(16) %iter)
          to label %bb5 unwind label %cleanup, !dbg !252

bb4:                                              ; preds = %bb15, %bb14
  br label %bb1, !dbg !253

bb5:                                              ; preds = %bb3
  store i32* %12, i32** %_8, align 8, !dbg !252
  %13 = bitcast i32** %_8 to {}**, !dbg !254
  %14 = load {}*, {}** %13, align 8, !dbg !254
  %15 = icmp ule {}* %14, null, !dbg !254
  %_11 = select i1 %15, i64 0, i64 1, !dbg !254
  switch i64 %_11, label %bb7 [
    i64 0, label %bb6
    i64 1, label %bb8
  ], !dbg !254

bb6:                                              ; preds = %bb5
  br label %bb9, !dbg !255

bb7:                                              ; preds = %bb5
  unreachable, !dbg !252

bb8:                                              ; preds = %bb5
  %val = load i32*, i32** %_8, align 8, !dbg !254, !nonnull !4
  store i32* %val, i32** %val.dbg.spill, align 8, !dbg !254
  call void @llvm.dbg.declare(metadata i32** %val.dbg.spill, metadata !237, metadata !DIExpression()), !dbg !256
  store i8 1, i8* %_20, align 1, !dbg !256
  store i32* %val, i32** %__next.dbg.spill, align 8, !dbg !256
  call void @llvm.dbg.declare(metadata i32** %__next.dbg.spill, metadata !235, metadata !DIExpression()), !dbg !252
  store i8 0, i8* %_20, align 1, !dbg !252
  store i32* %val, i32** %entry, align 8, !dbg !252
  %_17.0 = bitcast i32** %entry to {}*, !dbg !257
  %_15 = invoke align 8 dereferenceable(16) %"core::fmt::builders::DebugList"* @_ZN4core3fmt8builders9DebugList5entry17h49d852d7c1cf8431E(%"core::fmt::builders::DebugList"* align 8 dereferenceable(16) %self, {}* nonnull align 1 %_17.0, [3 x i64]* noalias readonly align 8 dereferenceable(24) bitcast ({ void (i32**)*, i64, i64, i1 (i32**, %"core::fmt::Formatter"*)* }* @vtable.1 to [3 x i64]*))
          to label %bb10 unwind label %cleanup1, !dbg !258

bb9:                                              ; preds = %bb6
  store i8 0, i8* %_20, align 1, !dbg !259
  br label %bb13, !dbg !253

bb10:                                             ; preds = %bb8
  br label %bb12, !dbg !260

bb11:                                             ; preds = %cleanup1
  br label %bb15, !dbg !260

bb12:                                             ; preds = %bb10
  store i8 0, i8* %_20, align 1, !dbg !259
  br label %bb3, !dbg !251

bb13:                                             ; preds = %bb9
  ret %"core::fmt::builders::DebugList"* %self, !dbg !261

bb14:                                             ; preds = %bb15
  store i8 0, i8* %_20, align 1, !dbg !259
  br label %bb4, !dbg !259

bb15:                                             ; preds = %cleanup, %bb11
  %16 = load i8, i8* %_20, align 1, !dbg !259, !range !262
  %17 = trunc i8 %16 to i1, !dbg !259
  br i1 %17, label %bb14, label %bb4, !dbg !259

cleanup:                                          ; preds = %bb3
  %18 = landingpad { i8*, i32 }
          cleanup
  %19 = extractvalue { i8*, i32 } %18, 0
  %20 = extractvalue { i8*, i32 } %18, 1
  %21 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %0, i32 0, i32 0
  store i8* %19, i8** %21, align 8
  %22 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %0, i32 0, i32 1
  store i32 %20, i32* %22, align 8
  br label %bb15

cleanup1:                                         ; preds = %bb8
  %23 = landingpad { i8*, i32 }
          cleanup
  %24 = extractvalue { i8*, i32 } %23, 0
  %25 = extractvalue { i8*, i32 } %23, 1
  %26 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %0, i32 0, i32 0
  store i8* %24, i8** %26, align 8
  %27 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %0, i32 0, i32 1
  store i32 %25, i32* %27, align 8
  br label %bb11
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal void @_ZN4core3fmt9Arguments6new_v117h0eff704c401da8f4E(%"core::fmt::Arguments"* noalias nocapture sret dereferenceable(48) %0, [0 x { [0 x i8]*, i64 }]* noalias nonnull readonly align 8 %pieces.0, i64 %pieces.1, [0 x { i8*, i8* }]* noalias nonnull readonly align 8 %args.0, i64 %args.1) unnamed_addr #1 !dbg !263 {
start:
  %args.dbg.spill = alloca { [0 x { i8*, i8* }]*, i64 }, align 8
  %pieces.dbg.spill = alloca { [0 x { [0 x i8]*, i64 }]*, i64 }, align 8
  %_4 = alloca { i64*, i64 }, align 8
  %1 = getelementptr inbounds { [0 x { [0 x i8]*, i64 }]*, i64 }, { [0 x { [0 x i8]*, i64 }]*, i64 }* %pieces.dbg.spill, i32 0, i32 0
  store [0 x { [0 x i8]*, i64 }]* %pieces.0, [0 x { [0 x i8]*, i64 }]** %1, align 8
  %2 = getelementptr inbounds { [0 x { [0 x i8]*, i64 }]*, i64 }, { [0 x { [0 x i8]*, i64 }]*, i64 }* %pieces.dbg.spill, i32 0, i32 1
  store i64 %pieces.1, i64* %2, align 8
  call void @llvm.dbg.declare(metadata { [0 x { [0 x i8]*, i64 }]*, i64 }* %pieces.dbg.spill, metadata !329, metadata !DIExpression()), !dbg !331
  %3 = getelementptr inbounds { [0 x { i8*, i8* }]*, i64 }, { [0 x { i8*, i8* }]*, i64 }* %args.dbg.spill, i32 0, i32 0
  store [0 x { i8*, i8* }]* %args.0, [0 x { i8*, i8* }]** %3, align 8
  %4 = getelementptr inbounds { [0 x { i8*, i8* }]*, i64 }, { [0 x { i8*, i8* }]*, i64 }* %args.dbg.spill, i32 0, i32 1
  store i64 %args.1, i64* %4, align 8
  call void @llvm.dbg.declare(metadata { [0 x { i8*, i8* }]*, i64 }* %args.dbg.spill, metadata !330, metadata !DIExpression()), !dbg !332
  %5 = bitcast { i64*, i64 }* %_4 to {}**, !dbg !333
  store {}* null, {}** %5, align 8, !dbg !333
  %6 = bitcast %"core::fmt::Arguments"* %0 to { [0 x { [0 x i8]*, i64 }]*, i64 }*, !dbg !334
  %7 = getelementptr inbounds { [0 x { [0 x i8]*, i64 }]*, i64 }, { [0 x { [0 x i8]*, i64 }]*, i64 }* %6, i32 0, i32 0, !dbg !334
  store [0 x { [0 x i8]*, i64 }]* %pieces.0, [0 x { [0 x i8]*, i64 }]** %7, align 8, !dbg !334
  %8 = getelementptr inbounds { [0 x { [0 x i8]*, i64 }]*, i64 }, { [0 x { [0 x i8]*, i64 }]*, i64 }* %6, i32 0, i32 1, !dbg !334
  store i64 %pieces.1, i64* %8, align 8, !dbg !334
  %9 = getelementptr inbounds %"core::fmt::Arguments", %"core::fmt::Arguments"* %0, i32 0, i32 3, !dbg !334
  %10 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %_4, i32 0, i32 0, !dbg !334
  %11 = load i64*, i64** %10, align 8, !dbg !334
  %12 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %_4, i32 0, i32 1, !dbg !334
  %13 = load i64, i64* %12, align 8, !dbg !334
  %14 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %9, i32 0, i32 0, !dbg !334
  store i64* %11, i64** %14, align 8, !dbg !334
  %15 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %9, i32 0, i32 1, !dbg !334
  store i64 %13, i64* %15, align 8, !dbg !334
  %16 = getelementptr inbounds %"core::fmt::Arguments", %"core::fmt::Arguments"* %0, i32 0, i32 5, !dbg !334
  %17 = getelementptr inbounds { [0 x { i8*, i8* }]*, i64 }, { [0 x { i8*, i8* }]*, i64 }* %16, i32 0, i32 0, !dbg !334
  store [0 x { i8*, i8* }]* %args.0, [0 x { i8*, i8* }]** %17, align 8, !dbg !334
  %18 = getelementptr inbounds { [0 x { i8*, i8* }]*, i64 }, { [0 x { i8*, i8* }]*, i64 }* %16, i32 0, i32 1, !dbg !334
  store i64 %args.1, i64* %18, align 8, !dbg !334
  ret void, !dbg !335
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal i64 @_ZN4core3num12NonZeroUsize13new_unchecked17h5f2101f47de8d5b2E(i64 %n) unnamed_addr #1 !dbg !336 {
start:
  %n.dbg.spill = alloca i64, align 8
  %0 = alloca i64, align 8
  store i64 %n, i64* %n.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i64* %n.dbg.spill, metadata !345, metadata !DIExpression()), !dbg !346
  store i64 %n, i64* %0, align 8, !dbg !347
  %1 = load i64, i64* %0, align 8, !dbg !348, !range !349
  ret i64 %1, !dbg !348
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal i64 @_ZN4core3num12NonZeroUsize3get17hae8ab9fa718e6010E(i64 %self) unnamed_addr #1 !dbg !350 {
start:
  %self.dbg.spill = alloca i64, align 8
  store i64 %self, i64* %self.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i64* %self.dbg.spill, metadata !354, metadata !DIExpression()), !dbg !355
  ret i64 %self, !dbg !356
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal { i64, i64 } @"_ZN4core3num23_$LT$impl$u20$usize$GT$11checked_mul17h3d82c6e973ce4761E"(i64 %self, i64 %rhs) unnamed_addr #1 !dbg !357 {
start:
  %b.dbg.spill = alloca i8, align 1
  %a.dbg.spill = alloca i64, align 8
  %rhs.dbg.spill = alloca i64, align 8
  %self.dbg.spill = alloca i64, align 8
  %0 = alloca { i64, i64 }, align 8
  store i64 %self, i64* %self.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i64* %self.dbg.spill, metadata !362, metadata !DIExpression()), !dbg !367
  store i64 %rhs, i64* %rhs.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i64* %rhs.dbg.spill, metadata !363, metadata !DIExpression()), !dbg !368
  %1 = call { i64, i8 } @"_ZN4core3num23_$LT$impl$u20$usize$GT$15overflowing_mul17hd53a242448b48532E"(i64 %self, i64 %rhs), !dbg !369
  %_5.0 = extractvalue { i64, i8 } %1, 0, !dbg !369
  %2 = extractvalue { i64, i8 } %1, 1, !dbg !369
  %_5.1 = trunc i8 %2 to i1, !dbg !369
  br label %bb1, !dbg !369

bb1:                                              ; preds = %start
  store i64 %_5.0, i64* %a.dbg.spill, align 8, !dbg !370
  call void @llvm.dbg.declare(metadata i64* %a.dbg.spill, metadata !364, metadata !DIExpression()), !dbg !371
  %3 = zext i1 %_5.1 to i8, !dbg !372
  store i8 %3, i8* %b.dbg.spill, align 1, !dbg !372
  call void @llvm.dbg.declare(metadata i8* %b.dbg.spill, metadata !366, metadata !DIExpression()), !dbg !373
  br i1 %_5.1, label %bb3, label %bb2, !dbg !374

bb2:                                              ; preds = %bb1
  %4 = bitcast { i64, i64 }* %0 to %"core::option::Option<usize>::Some"*, !dbg !375
  %5 = getelementptr inbounds %"core::option::Option<usize>::Some", %"core::option::Option<usize>::Some"* %4, i32 0, i32 1, !dbg !375
  store i64 %_5.0, i64* %5, align 8, !dbg !375
  %6 = bitcast { i64, i64 }* %0 to i64*, !dbg !375
  store i64 1, i64* %6, align 8, !dbg !375
  br label %bb4, !dbg !374

bb3:                                              ; preds = %bb1
  %7 = bitcast { i64, i64 }* %0 to i64*, !dbg !376
  store i64 0, i64* %7, align 8, !dbg !376
  br label %bb4, !dbg !374

bb4:                                              ; preds = %bb3, %bb2
  %8 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %0, i32 0, i32 0, !dbg !377
  %9 = load i64, i64* %8, align 8, !dbg !377, !range !378
  %10 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %0, i32 0, i32 1, !dbg !377
  %11 = load i64, i64* %10, align 8, !dbg !377
  %12 = insertvalue { i64, i64 } undef, i64 %9, 0, !dbg !377
  %13 = insertvalue { i64, i64 } %12, i64 %11, 1, !dbg !377
  ret { i64, i64 } %13, !dbg !377
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal i64 @"_ZN4core3num23_$LT$impl$u20$usize$GT$14saturating_mul17hdb30f381b437dd7eE"(i64 %self, i64 %rhs) unnamed_addr #1 !dbg !379 {
start:
  %x.dbg.spill = alloca i64, align 8
  %rhs.dbg.spill = alloca i64, align 8
  %self.dbg.spill = alloca i64, align 8
  %_3 = alloca { i64, i64 }, align 8
  %0 = alloca i64, align 8
  store i64 %self, i64* %self.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i64* %self.dbg.spill, metadata !383, metadata !DIExpression()), !dbg !387
  store i64 %rhs, i64* %rhs.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i64* %rhs.dbg.spill, metadata !384, metadata !DIExpression()), !dbg !388
  %1 = call { i64, i64 } @"_ZN4core3num23_$LT$impl$u20$usize$GT$11checked_mul17h3d82c6e973ce4761E"(i64 %self, i64 %rhs), !dbg !389
  store { i64, i64 } %1, { i64, i64 }* %_3, align 8, !dbg !389
  br label %bb1, !dbg !389

bb1:                                              ; preds = %start
  %2 = bitcast { i64, i64 }* %_3 to i64*, !dbg !390
  %_6 = load i64, i64* %2, align 8, !dbg !390, !range !378
  switch i64 %_6, label %bb3 [
    i64 0, label %bb2
    i64 1, label %bb4
  ], !dbg !390

bb2:                                              ; preds = %bb1
  store i64 -1, i64* %0, align 8, !dbg !391
  br label %bb5, !dbg !391

bb3:                                              ; preds = %bb1
  unreachable, !dbg !389

bb4:                                              ; preds = %bb1
  %3 = bitcast { i64, i64 }* %_3 to %"core::option::Option<usize>::Some"*, !dbg !392
  %4 = getelementptr inbounds %"core::option::Option<usize>::Some", %"core::option::Option<usize>::Some"* %3, i32 0, i32 1, !dbg !392
  %x = load i64, i64* %4, align 8, !dbg !392
  store i64 %x, i64* %x.dbg.spill, align 8, !dbg !392
  call void @llvm.dbg.declare(metadata i64* %x.dbg.spill, metadata !385, metadata !DIExpression()), !dbg !393
  store i64 %x, i64* %0, align 8, !dbg !394
  br label %bb5, !dbg !395

bb5:                                              ; preds = %bb4, %bb2
  %5 = load i64, i64* %0, align 8, !dbg !396
  ret i64 %5, !dbg !396
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal { i64, i8 } @"_ZN4core3num23_$LT$impl$u20$usize$GT$15overflowing_mul17hd53a242448b48532E"(i64 %self, i64 %rhs) unnamed_addr #1 !dbg !397 {
start:
  %b.dbg.spill = alloca i8, align 1
  %a.dbg.spill = alloca i64, align 8
  %0 = alloca { i64, i8 }, align 8
  %rhs.dbg.spill = alloca i64, align 8
  %self.dbg.spill = alloca i64, align 8
  %1 = alloca { i64, i8 }, align 8
  store i64 %self, i64* %self.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i64* %self.dbg.spill, metadata !405, metadata !DIExpression()), !dbg !410
  store i64 %rhs, i64* %rhs.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i64* %rhs.dbg.spill, metadata !406, metadata !DIExpression()), !dbg !411
  %2 = call { i64, i1 } @llvm.umul.with.overflow.i64(i64 %self, i64 %rhs), !dbg !412
  %3 = extractvalue { i64, i1 } %2, 0, !dbg !412
  %4 = extractvalue { i64, i1 } %2, 1, !dbg !412
  %5 = zext i1 %4 to i8, !dbg !412
  %6 = bitcast { i64, i8 }* %0 to i64*, !dbg !412
  store i64 %3, i64* %6, align 8, !dbg !412
  %7 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %0, i32 0, i32 1, !dbg !412
  store i8 %5, i8* %7, align 8, !dbg !412
  %8 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %0, i32 0, i32 0, !dbg !412
  %_5.0 = load i64, i64* %8, align 8, !dbg !412
  %9 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %0, i32 0, i32 1, !dbg !412
  %10 = load i8, i8* %9, align 8, !dbg !412, !range !262
  %_5.1 = trunc i8 %10 to i1, !dbg !412
  br label %bb1, !dbg !412

bb1:                                              ; preds = %start
  store i64 %_5.0, i64* %a.dbg.spill, align 8, !dbg !413
  call void @llvm.dbg.declare(metadata i64* %a.dbg.spill, metadata !407, metadata !DIExpression()), !dbg !414
  %11 = zext i1 %_5.1 to i8, !dbg !415
  store i8 %11, i8* %b.dbg.spill, align 1, !dbg !415
  call void @llvm.dbg.declare(metadata i8* %b.dbg.spill, metadata !409, metadata !DIExpression()), !dbg !416
  %12 = bitcast { i64, i8 }* %1 to i64*, !dbg !417
  store i64 %_5.0, i64* %12, align 8, !dbg !417
  %13 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %1, i32 0, i32 1, !dbg !417
  %14 = zext i1 %_5.1 to i8, !dbg !417
  store i8 %14, i8* %13, align 8, !dbg !417
  %15 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %1, i32 0, i32 0, !dbg !418
  %16 = load i64, i64* %15, align 8, !dbg !418
  %17 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %1, i32 0, i32 1, !dbg !418
  %18 = load i8, i8* %17, align 8, !dbg !418, !range !262
  %19 = trunc i8 %18 to i1, !dbg !418
  %20 = zext i1 %19 to i8, !dbg !418
  %21 = insertvalue { i64, i8 } undef, i64 %16, 0, !dbg !418
  %22 = insertvalue { i64, i8 } %21, i8 %20, 1, !dbg !418
  ret { i64, i8 } %22, !dbg !418
}

; Function Attrs: nonlazybind uwtable
define internal i32 @"_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h3bb9379a37e9b5e3E"(i8** %_1) unnamed_addr #0 !dbg !419 {
start:
  %_1.dbg.spill = alloca i8**, align 8
  %_2 = alloca {}, align 1
  store i8** %_1, i8*** %_1.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i8*** %_1.dbg.spill, metadata !428, metadata !DIExpression()), !dbg !433
  call void @llvm.dbg.declare(metadata {}* %_2, metadata !429, metadata !DIExpression()), !dbg !433
  %0 = load i8*, i8** %_1, align 8, !dbg !433, !nonnull !4
  %1 = call i32 @_ZN4core3ops8function6FnOnce9call_once17h9e0d738d466035bcE(i8* nonnull %0), !dbg !433
  br label %bb1, !dbg !433

bb1:                                              ; preds = %start
  ret i32 %1, !dbg !433
}

; Function Attrs: nonlazybind uwtable
define internal i32 @_ZN4core3ops8function6FnOnce9call_once17h9e0d738d466035bcE(i8* nonnull %0) unnamed_addr #0 personality i32 (i32, i32, i64, %"unwind::libunwind::_Unwind_Exception"*, %"unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality !dbg !434 {
start:
  %1 = alloca { i8*, i32 }, align 8
  %_2 = alloca {}, align 1
  %_1 = alloca i8*, align 8
  store i8* %0, i8** %_1, align 8
  call void @llvm.dbg.declare(metadata i8** %_1, metadata !438, metadata !DIExpression()), !dbg !440
  call void @llvm.dbg.declare(metadata {}* %_2, metadata !439, metadata !DIExpression()), !dbg !440
  %2 = invoke i32 @"_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h37f61e5b7249be66E"(i8** noalias readonly align 8 dereferenceable(8) %_1)
          to label %bb1 unwind label %cleanup, !dbg !440

bb1:                                              ; preds = %start
  br label %bb2, !dbg !440

bb2:                                              ; preds = %bb1
  ret i32 %2, !dbg !440

bb3:                                              ; preds = %cleanup
  br label %bb4, !dbg !440

bb4:                                              ; preds = %bb3
  %3 = bitcast { i8*, i32 }* %1 to i8**, !dbg !440
  %4 = load i8*, i8** %3, align 8, !dbg !440
  %5 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %1, i32 0, i32 1, !dbg !440
  %6 = load i32, i32* %5, align 8, !dbg !440
  %7 = insertvalue { i8*, i32 } undef, i8* %4, 0, !dbg !440
  %8 = insertvalue { i8*, i32 } %7, i32 %6, 1, !dbg !440
  resume { i8*, i32 } %8, !dbg !440

cleanup:                                          ; preds = %start
  %9 = landingpad { i8*, i32 }
          cleanup
  %10 = extractvalue { i8*, i32 } %9, 0
  %11 = extractvalue { i8*, i32 } %9, 1
  %12 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %1, i32 0, i32 0
  store i8* %10, i8** %12, align 8
  %13 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %1, i32 0, i32 1
  store i32 %11, i32* %13, align 8
  br label %bb3
}

; Function Attrs: nonlazybind uwtable
define internal void @_ZN4core3ptr13drop_in_place17h3779003cde8a2e9cE(%"alloc::vec::Vec<i32>"* %_1) unnamed_addr #0 personality i32 (i32, i32, i64, %"unwind::libunwind::_Unwind_Exception"*, %"unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality !dbg !441 {
start:
  %0 = alloca { i8*, i32 }, align 8
  %_1.dbg.spill = alloca %"alloc::vec::Vec<i32>"*, align 8
  %1 = alloca {}, align 1
  store %"alloc::vec::Vec<i32>"* %_1, %"alloc::vec::Vec<i32>"** %_1.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata %"alloc::vec::Vec<i32>"** %_1.dbg.spill, metadata !447, metadata !DIExpression()), !dbg !448
  invoke void @"_ZN66_$LT$alloc..vec..Vec$LT$T$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h85f87b8320454e7eE"(%"alloc::vec::Vec<i32>"* align 8 dereferenceable(24) %_1)
          to label %bb4 unwind label %cleanup, !dbg !448

bb1:                                              ; preds = %bb3
  %2 = bitcast { i8*, i32 }* %0 to i8**, !dbg !448
  %3 = load i8*, i8** %2, align 8, !dbg !448
  %4 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %0, i32 0, i32 1, !dbg !448
  %5 = load i32, i32* %4, align 8, !dbg !448
  %6 = insertvalue { i8*, i32 } undef, i8* %3, 0, !dbg !448
  %7 = insertvalue { i8*, i32 } %6, i32 %5, 1, !dbg !448
  resume { i8*, i32 } %7, !dbg !448

bb2:                                              ; preds = %bb4
  ret void, !dbg !448

bb3:                                              ; preds = %cleanup
  %8 = bitcast %"alloc::vec::Vec<i32>"* %_1 to { i32*, i64 }*, !dbg !448
  call void @_ZN4core3ptr13drop_in_place17h3956c02036868266E({ i32*, i64 }* %8) #10, !dbg !448
  br label %bb1, !dbg !448

bb4:                                              ; preds = %start
  %9 = bitcast %"alloc::vec::Vec<i32>"* %_1 to { i32*, i64 }*, !dbg !448
  call void @_ZN4core3ptr13drop_in_place17h3956c02036868266E({ i32*, i64 }* %9), !dbg !448
  br label %bb2, !dbg !448

cleanup:                                          ; preds = %start
  %10 = landingpad { i8*, i32 }
          cleanup
  %11 = extractvalue { i8*, i32 } %10, 0
  %12 = extractvalue { i8*, i32 } %10, 1
  %13 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %0, i32 0, i32 0
  store i8* %11, i8** %13, align 8
  %14 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %0, i32 0, i32 1
  store i32 %12, i32* %14, align 8
  br label %bb3
}

; Function Attrs: nonlazybind uwtable
define internal void @_ZN4core3ptr13drop_in_place17h3956c02036868266E({ i32*, i64 }* %_1) unnamed_addr #0 !dbg !449 {
start:
  %_1.dbg.spill = alloca { i32*, i64 }*, align 8
  %0 = alloca {}, align 1
  store { i32*, i64 }* %_1, { i32*, i64 }** %_1.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata { i32*, i64 }** %_1.dbg.spill, metadata !454, metadata !DIExpression()), !dbg !457
  call void @"_ZN77_$LT$alloc..raw_vec..RawVec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h667701eba3543d10E"({ i32*, i64 }* align 8 dereferenceable(16) %_1), !dbg !457
  br label %bb1, !dbg !457

bb1:                                              ; preds = %start
  ret void, !dbg !457
}

; Function Attrs: nonlazybind uwtable
define internal void @_ZN4core3ptr13drop_in_place17h6269e61f07cd105dE({ [0 x i32]*, i64 }* %_1) unnamed_addr #0 personality i32 (i32, i32, i64, %"unwind::libunwind::_Unwind_Exception"*, %"unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality !dbg !458 {
start:
  %0 = alloca { i8*, i32 }, align 8
  %_1.dbg.spill = alloca { [0 x i32]*, i64 }*, align 8
  %1 = alloca {}, align 1
  store { [0 x i32]*, i64 }* %_1, { [0 x i32]*, i64 }** %_1.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata { [0 x i32]*, i64 }** %_1.dbg.spill, metadata !472, metadata !DIExpression()), !dbg !475
  br label %bb3, !dbg !475

bb1:                                              ; preds = %bb3
  ret void, !dbg !475

bb2:                                              ; preds = %bb4
  %2 = bitcast { i8*, i32 }* %0 to i8**, !dbg !475
  %3 = load i8*, i8** %2, align 8, !dbg !475
  %4 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %0, i32 0, i32 1, !dbg !475
  %5 = load i32, i32* %4, align 8, !dbg !475
  %6 = insertvalue { i8*, i32 } undef, i8* %3, 0, !dbg !475
  %7 = insertvalue { i8*, i32 } %6, i32 %5, 1, !dbg !475
  resume { i8*, i32 } %7, !dbg !475

bb3:                                              ; preds = %start
  %8 = bitcast { [0 x i32]*, i64 }* %_1 to { i32*, i64 }*, !dbg !475
  %9 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %8, i32 0, i32 0, !dbg !475
  %10 = load i32*, i32** %9, align 8, !dbg !475, !nonnull !4
  %11 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %8, i32 0, i32 1, !dbg !475
  %12 = load i64, i64* %11, align 8, !dbg !475
  call void @_ZN5alloc5alloc8box_free17h92feb61dba2592c5E(i32* nonnull %10, i64 %12), !dbg !475
  br label %bb1, !dbg !475

bb4:                                              ; No predecessors!
  %13 = bitcast { [0 x i32]*, i64 }* %_1 to { i32*, i64 }*, !dbg !475
  %14 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %13, i32 0, i32 0, !dbg !475
  %15 = load i32*, i32** %14, align 8, !dbg !475, !nonnull !4
  %16 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %13, i32 0, i32 1, !dbg !475
  %17 = load i64, i64* %16, align 8, !dbg !475
  call void @_ZN5alloc5alloc8box_free17h92feb61dba2592c5E(i32* nonnull %15, i64 %17) #10, !dbg !475
  br label %bb2, !dbg !475
}

; Function Attrs: nonlazybind uwtable
define internal void @_ZN4core3ptr13drop_in_place17hb53d219ce4265296E(i8** %_1) unnamed_addr #0 !dbg !476 {
start:
  %_1.dbg.spill = alloca i8**, align 8
  %0 = alloca {}, align 1
  store i8** %_1, i8*** %_1.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i8*** %_1.dbg.spill, metadata !480, metadata !DIExpression()), !dbg !483
  ret void, !dbg !483
}

; Function Attrs: nonlazybind uwtable
define internal void @_ZN4core3ptr13drop_in_place17hf8c5d4897aee99e4E(i32** %_1) unnamed_addr #0 !dbg !484 {
start:
  %_1.dbg.spill = alloca i32**, align 8
  %0 = alloca {}, align 1
  store i32** %_1, i32*** %_1.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i32*** %_1.dbg.spill, metadata !489, metadata !DIExpression()), !dbg !490
  ret void, !dbg !490
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal { [0 x i32]*, i64 } @_ZN4core3ptr20slice_from_raw_parts17h286fba5d8a605140E(i32* %data, i64 %len) unnamed_addr #1 !dbg !491 {
start:
  %len.dbg.spill = alloca i64, align 8
  %data.dbg.spill = alloca i32*, align 8
  %_4 = alloca { i32*, i64 }, align 8
  %_3 = alloca %"core::ptr::Repr<i32>", align 8
  store i32* %data, i32** %data.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i32** %data.dbg.spill, metadata !499, metadata !DIExpression()), !dbg !501
  store i64 %len, i64* %len.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i64* %len.dbg.spill, metadata !500, metadata !DIExpression()), !dbg !502
  %0 = bitcast { i32*, i64 }* %_4 to i32**, !dbg !503
  store i32* %data, i32** %0, align 8, !dbg !503
  %1 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %_4, i32 0, i32 1, !dbg !503
  store i64 %len, i64* %1, align 8, !dbg !503
  %2 = bitcast %"core::ptr::Repr<i32>"* %_3 to { i32*, i64 }*, !dbg !504
  %3 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %_4, i32 0, i32 0, !dbg !504
  %4 = load i32*, i32** %3, align 8, !dbg !504
  %5 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %_4, i32 0, i32 1, !dbg !504
  %6 = load i64, i64* %5, align 8, !dbg !504
  %7 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %2, i32 0, i32 0, !dbg !504
  store i32* %4, i32** %7, align 8, !dbg !504
  %8 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %2, i32 0, i32 1, !dbg !504
  store i64 %6, i64* %8, align 8, !dbg !504
  %9 = bitcast %"core::ptr::Repr<i32>"* %_3 to { [0 x i32]*, i64 }*, !dbg !504
  %10 = getelementptr inbounds { [0 x i32]*, i64 }, { [0 x i32]*, i64 }* %9, i32 0, i32 0, !dbg !504
  %11 = load [0 x i32]*, [0 x i32]** %10, align 8, !dbg !504
  %12 = getelementptr inbounds { [0 x i32]*, i64 }, { [0 x i32]*, i64 }* %9, i32 0, i32 1, !dbg !504
  %13 = load i64, i64* %12, align 8, !dbg !504
  %14 = insertvalue { [0 x i32]*, i64 } undef, [0 x i32]* %11, 0, !dbg !505
  %15 = insertvalue { [0 x i32]*, i64 } %14, i64 %13, 1, !dbg !505
  ret { [0 x i32]*, i64 } %15, !dbg !505
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal { [0 x i32]*, i64 } @_ZN4core3ptr24slice_from_raw_parts_mut17h8773b5974a4856c9E(i32* %data, i64 %len) unnamed_addr #1 !dbg !506 {
start:
  %len.dbg.spill = alloca i64, align 8
  %data.dbg.spill = alloca i32*, align 8
  %_4 = alloca { i32*, i64 }, align 8
  %_3 = alloca %"core::ptr::Repr<i32>", align 8
  store i32* %data, i32** %data.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i32** %data.dbg.spill, metadata !515, metadata !DIExpression()), !dbg !517
  store i64 %len, i64* %len.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i64* %len.dbg.spill, metadata !516, metadata !DIExpression()), !dbg !518
  %0 = bitcast { i32*, i64 }* %_4 to i32**, !dbg !519
  store i32* %data, i32** %0, align 8, !dbg !519
  %1 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %_4, i32 0, i32 1, !dbg !519
  store i64 %len, i64* %1, align 8, !dbg !519
  %2 = bitcast %"core::ptr::Repr<i32>"* %_3 to { i32*, i64 }*, !dbg !520
  %3 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %_4, i32 0, i32 0, !dbg !520
  %4 = load i32*, i32** %3, align 8, !dbg !520
  %5 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %_4, i32 0, i32 1, !dbg !520
  %6 = load i64, i64* %5, align 8, !dbg !520
  %7 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %2, i32 0, i32 0, !dbg !520
  store i32* %4, i32** %7, align 8, !dbg !520
  %8 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %2, i32 0, i32 1, !dbg !520
  store i64 %6, i64* %8, align 8, !dbg !520
  %9 = bitcast %"core::ptr::Repr<i32>"* %_3 to { [0 x i32]*, i64 }*, !dbg !520
  %10 = getelementptr inbounds { [0 x i32]*, i64 }, { [0 x i32]*, i64 }* %9, i32 0, i32 0, !dbg !520
  %11 = load [0 x i32]*, [0 x i32]** %10, align 8, !dbg !520
  %12 = getelementptr inbounds { [0 x i32]*, i64 }, { [0 x i32]*, i64 }* %9, i32 0, i32 1, !dbg !520
  %13 = load i64, i64* %12, align 8, !dbg !520
  %14 = insertvalue { [0 x i32]*, i64 } undef, [0 x i32]* %11, 0, !dbg !521
  %15 = insertvalue { [0 x i32]*, i64 } %14, i64 %13, 1, !dbg !521
  ret { [0 x i32]*, i64 } %15, !dbg !521
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal nonnull i32* @"_ZN4core3ptr6unique15Unique$LT$T$GT$13new_unchecked17h8ddd6ca994aafd6fE"(i32* %ptr) unnamed_addr #1 !dbg !522 {
start:
  %ptr.dbg.spill = alloca i32*, align 8
  %_5 = alloca %"core::marker::PhantomData<i32>", align 1
  %0 = alloca i32*, align 8
  store i32* %ptr, i32** %ptr.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i32** %ptr.dbg.spill, metadata !527, metadata !DIExpression()), !dbg !528
  store i32* %ptr, i32** %0, align 8, !dbg !529
  %1 = bitcast i32** %0 to %"core::marker::PhantomData<i32>"*, !dbg !529
  %2 = load i32*, i32** %0, align 8, !dbg !530, !nonnull !4
  ret i32* %2, !dbg !530
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal nonnull i8* @"_ZN4core3ptr6unique15Unique$LT$T$GT$4cast17h373689ae3567ff9aE"(i32* nonnull %self) unnamed_addr #1 !dbg !531 {
start:
  %self.dbg.spill = alloca i32*, align 8
  store i32* %self, i32** %self.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i32** %self.dbg.spill, metadata !542, metadata !DIExpression()), !dbg !545
  %_3 = call i32* @"_ZN4core3ptr6unique15Unique$LT$T$GT$6as_ptr17h504bde568a512624E"(i32* nonnull %self), !dbg !546
  br label %bb1, !dbg !546

bb1:                                              ; preds = %start
  %_2 = bitcast i32* %_3 to i8*, !dbg !546
  %0 = call nonnull i8* @"_ZN4core3ptr6unique15Unique$LT$T$GT$13new_unchecked17hc582b72fbbf1790dE"(i8* %_2), !dbg !547
  br label %bb2, !dbg !547

bb2:                                              ; preds = %bb1
  ret i8* %0, !dbg !548
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal nonnull i8* @"_ZN4core3ptr6unique15Unique$LT$T$GT$4cast17hd0db8cb4ed1e5d02E"(i32* nonnull %self.0, i64 %self.1) unnamed_addr #1 !dbg !549 {
start:
  %self.dbg.spill = alloca { i32*, i64 }, align 8
  %0 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %self.dbg.spill, i32 0, i32 0
  store i32* %self.0, i32** %0, align 8
  %1 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %self.dbg.spill, i32 0, i32 1
  store i64 %self.1, i64* %1, align 8
  call void @llvm.dbg.declare(metadata { i32*, i64 }* %self.dbg.spill, metadata !558, metadata !DIExpression()), !dbg !560
  %2 = call { [0 x i32]*, i64 } @"_ZN4core3ptr6unique15Unique$LT$T$GT$6as_ptr17hcada7862f094e013E"(i32* nonnull %self.0, i64 %self.1), !dbg !561
  %_3.0 = extractvalue { [0 x i32]*, i64 } %2, 0, !dbg !561
  %_3.1 = extractvalue { [0 x i32]*, i64 } %2, 1, !dbg !561
  br label %bb1, !dbg !561

bb1:                                              ; preds = %start
  %_2 = bitcast [0 x i32]* %_3.0 to i8*, !dbg !561
  %3 = call nonnull i8* @"_ZN4core3ptr6unique15Unique$LT$T$GT$13new_unchecked17hc582b72fbbf1790dE"(i8* %_2), !dbg !562
  br label %bb2, !dbg !562

bb2:                                              ; preds = %bb1
  ret i8* %3, !dbg !563
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal i32* @"_ZN4core3ptr6unique15Unique$LT$T$GT$6as_ptr17h504bde568a512624E"(i32* nonnull %self) unnamed_addr #1 !dbg !564 {
start:
  %self.dbg.spill = alloca i32*, align 8
  store i32* %self, i32** %self.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i32** %self.dbg.spill, metadata !568, metadata !DIExpression()), !dbg !569
  ret i32* %self, !dbg !570
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal { [0 x i32]*, i64 } @"_ZN4core3ptr6unique15Unique$LT$T$GT$6as_ptr17hcada7862f094e013E"(i32* nonnull %self.0, i64 %self.1) unnamed_addr #1 !dbg !571 {
start:
  %self.dbg.spill = alloca { i32*, i64 }, align 8
  %0 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %self.dbg.spill, i32 0, i32 0
  store i32* %self.0, i32** %0, align 8
  %1 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %self.dbg.spill, i32 0, i32 1
  store i64 %self.1, i64* %1, align 8
  call void @llvm.dbg.declare(metadata { i32*, i64 }* %self.dbg.spill, metadata !575, metadata !DIExpression()), !dbg !576
  %_2.0 = bitcast i32* %self.0 to [0 x i32]*, !dbg !577
  %2 = insertvalue { [0 x i32]*, i64 } undef, [0 x i32]* %_2.0, 0, !dbg !578
  %3 = insertvalue { [0 x i32]*, i64 } %2, i64 %self.1, 1, !dbg !578
  ret { [0 x i32]*, i64 } %3, !dbg !578
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal { [0 x i32]*, i64 } @"_ZN4core3ptr6unique15Unique$LT$T$GT$6as_ref17h5c87c40cabb0fec7E"({ i32*, i64 }* noalias readonly align 8 dereferenceable(16) %self) unnamed_addr #1 !dbg !579 {
start:
  %self.dbg.spill = alloca { i32*, i64 }*, align 8
  store { i32*, i64 }* %self, { i32*, i64 }** %self.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata { i32*, i64 }** %self.dbg.spill, metadata !584, metadata !DIExpression()), !dbg !585
  %0 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %self, i32 0, i32 0, !dbg !586
  %_3.0 = load i32*, i32** %0, align 8, !dbg !586, !nonnull !4
  %1 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %self, i32 0, i32 1, !dbg !586
  %_3.1 = load i64, i64* %1, align 8, !dbg !586
  %2 = call { [0 x i32]*, i64 } @"_ZN4core3ptr6unique15Unique$LT$T$GT$6as_ptr17hcada7862f094e013E"(i32* nonnull %_3.0, i64 %_3.1), !dbg !586
  %_2.0 = extractvalue { [0 x i32]*, i64 } %2, 0, !dbg !586
  %_2.1 = extractvalue { [0 x i32]*, i64 } %2, 1, !dbg !586
  br label %bb1, !dbg !586

bb1:                                              ; preds = %start
  %3 = insertvalue { [0 x i32]*, i64 } undef, [0 x i32]* %_2.0, 0, !dbg !587
  %4 = insertvalue { [0 x i32]*, i64 } %3, i64 %_2.1, 1, !dbg !587
  ret { [0 x i32]*, i64 } %4, !dbg !587
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal { i64, i64 } @_ZN4core5alloc6layout6Layout25from_size_align_unchecked17h4a9e124a64866af6E(i64 %size, i64 %align) unnamed_addr #1 !dbg !588 {
start:
  %align.dbg.spill = alloca i64, align 8
  %size.dbg.spill = alloca i64, align 8
  %0 = alloca { i64, i64 }, align 8
  store i64 %size, i64* %size.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i64* %size.dbg.spill, metadata !598, metadata !DIExpression()), !dbg !600
  store i64 %align, i64* %align.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i64* %align.dbg.spill, metadata !599, metadata !DIExpression()), !dbg !601
  %_4 = call i64 @_ZN4core3num12NonZeroUsize13new_unchecked17h5f2101f47de8d5b2E(i64 %align), !dbg !602, !range !349
  br label %bb1, !dbg !602

bb1:                                              ; preds = %start
  %1 = bitcast { i64, i64 }* %0 to i64*, !dbg !603
  store i64 %size, i64* %1, align 8, !dbg !603
  %2 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %0, i32 0, i32 1, !dbg !603
  store i64 %_4, i64* %2, align 8, !dbg !603
  %3 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %0, i32 0, i32 0, !dbg !604
  %4 = load i64, i64* %3, align 8, !dbg !604
  %5 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %0, i32 0, i32 1, !dbg !604
  %6 = load i64, i64* %5, align 8, !dbg !604, !range !349
  %7 = insertvalue { i64, i64 } undef, i64 %4, 0, !dbg !604
  %8 = insertvalue { i64, i64 } %7, i64 %6, 1, !dbg !604
  ret { i64, i64 } %8, !dbg !604
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal i64 @_ZN4core5alloc6layout6Layout4size17hef4968c7788a7963E({ i64, i64 }* noalias readonly align 8 dereferenceable(16) %self) unnamed_addr #1 !dbg !605 {
start:
  %self.dbg.spill = alloca { i64, i64 }*, align 8
  store { i64, i64 }* %self, { i64, i64 }** %self.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata { i64, i64 }** %self.dbg.spill, metadata !610, metadata !DIExpression()), !dbg !611
  %0 = bitcast { i64, i64 }* %self to i64*, !dbg !612
  %1 = load i64, i64* %0, align 8, !dbg !612
  ret i64 %1, !dbg !613
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal i64 @_ZN4core5alloc6layout6Layout5align17h4710743b16bc1ec3E({ i64, i64 }* noalias readonly align 8 dereferenceable(16) %self) unnamed_addr #1 !dbg !614 {
start:
  %self.dbg.spill = alloca { i64, i64 }*, align 8
  store { i64, i64 }* %self, { i64, i64 }** %self.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata { i64, i64 }** %self.dbg.spill, metadata !616, metadata !DIExpression()), !dbg !617
  %0 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %self, i32 0, i32 1, !dbg !618
  %_2 = load i64, i64* %0, align 8, !dbg !618, !range !349
  %1 = call i64 @_ZN4core3num12NonZeroUsize3get17hae8ab9fa718e6010E(i64 %_2), !dbg !618
  br label %bb1, !dbg !618

bb1:                                              ; preds = %start
  ret i64 %1, !dbg !619
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal nonnull i8* @_ZN4core5alloc6layout6Layout8dangling17hcdb81f93d89b8781E({ i64, i64 }* noalias readonly align 8 dereferenceable(16) %self) unnamed_addr #1 !dbg !620 {
start:
  %self.dbg.spill = alloca { i64, i64 }*, align 8
  store { i64, i64 }* %self, { i64, i64 }** %self.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata { i64, i64 }** %self.dbg.spill, metadata !627, metadata !DIExpression()), !dbg !628
  %_3 = call i64 @_ZN4core5alloc6layout6Layout5align17h4710743b16bc1ec3E({ i64, i64 }* noalias readonly align 8 dereferenceable(16) %self), !dbg !629
  br label %bb1, !dbg !629

bb1:                                              ; preds = %start
  %_2 = inttoptr i64 %_3 to i8*, !dbg !629
  %0 = call nonnull i8* @"_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked17h95f6a7b155a1993bE"(i8* %_2), !dbg !630
  br label %bb2, !dbg !630

bb2:                                              ; preds = %bb1
  ret i8* %0, !dbg !631
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal { [0 x i32]*, i64 } @_ZN4core5slice14from_raw_parts17h1aa1aebb514c1027E(i32* %data, i64 %len) unnamed_addr #1 !dbg !632 {
start:
  %0 = alloca i64, align 8
  %len.dbg.spill = alloca i64, align 8
  %data.dbg.spill = alloca i32*, align 8
  store i32* %data, i32** %data.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i32** %data.dbg.spill, metadata !637, metadata !DIExpression()), !dbg !639
  store i64 %len, i64* %len.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i64* %len.dbg.spill, metadata !638, metadata !DIExpression()), !dbg !640
  %_4 = call zeroext i1 @_ZN4core10intrinsics23is_aligned_and_not_null17h48fb339f2584f6f4E(i32* %data), !dbg !641
  br label %bb1, !dbg !641

bb1:                                              ; preds = %start
  %_3 = xor i1 %_4, true, !dbg !642
  br i1 %_3, label %bb3, label %bb2, !dbg !642

bb2:                                              ; preds = %bb1
  store i64 4, i64* %0, align 8, !dbg !645
  %1 = load i64, i64* %0, align 8, !dbg !645
  br label %bb4, !dbg !652

bb3:                                              ; preds = %bb1
  call void @_ZN4core9panicking5panic17h08cbe4e12d51a418E([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [41 x i8] }>* @alloc27 to [0 x i8]*), i64 41, %"core::panic::Location"* noalias readonly align 8 dereferenceable(24) bitcast (<{ i8*, [16 x i8] }>* @alloc29 to %"core::panic::Location"*)), !dbg !653
  unreachable, !dbg !653

bb4:                                              ; preds = %bb2
  %_10 = call i64 @"_ZN4core3num23_$LT$impl$u20$usize$GT$14saturating_mul17hdb30f381b437dd7eE"(i64 %1, i64 %len), !dbg !652
  br label %bb5, !dbg !652

bb5:                                              ; preds = %bb4
  %_9 = icmp ule i64 %_10, 9223372036854775807, !dbg !652
  %_8 = xor i1 %_9, true, !dbg !642
  br i1 %_8, label %bb7, label %bb6, !dbg !642

bb6:                                              ; preds = %bb5
  %2 = call { [0 x i32]*, i64 } @_ZN4core3ptr20slice_from_raw_parts17h286fba5d8a605140E(i32* %data, i64 %len), !dbg !654
  %_16.0 = extractvalue { [0 x i32]*, i64 } %2, 0, !dbg !654
  %_16.1 = extractvalue { [0 x i32]*, i64 } %2, 1, !dbg !654
  br label %bb8, !dbg !654

bb7:                                              ; preds = %bb5
  call void @_ZN4core9panicking5panic17h08cbe4e12d51a418E([0 x i8]* noalias nonnull readonly align 1 bitcast (<{ [64 x i8] }>* @alloc30 to [0 x i8]*), i64 64, %"core::panic::Location"* noalias readonly align 8 dereferenceable(24) bitcast (<{ i8*, [16 x i8] }>* @alloc29 to %"core::panic::Location"*)), !dbg !653
  unreachable, !dbg !653

bb8:                                              ; preds = %bb6
  %3 = insertvalue { [0 x i32]*, i64 } undef, [0 x i32]* %_16.0, 0, !dbg !655
  %4 = insertvalue { [0 x i32]*, i64 } %3, i64 %_16.1, 1, !dbg !655
  ret { [0 x i32]*, i64 } %4, !dbg !655
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal i32 @"_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h4bad777fd2d9aef6E"() unnamed_addr #1 !dbg !656 {
start:
  %self.dbg.spill = alloca {}, align 1
  call void @llvm.dbg.declare(metadata {}* %self.dbg.spill, metadata !663, metadata !DIExpression()), !dbg !664
  %0 = call i32 @"_ZN68_$LT$std..process..ExitCode$u20$as$u20$std..process..Termination$GT$6report17h870f4d10f7079208E"(i8 0), !dbg !665
  br label %bb1, !dbg !665

bb1:                                              ; preds = %start
  ret i32 %0, !dbg !666
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal i32* @"_ZN5alloc3vec12Vec$LT$T$GT$10as_mut_ptr17hf71855b8cc411b38E"(%"alloc::vec::Vec<i32>"* align 8 dereferenceable(24) %self) unnamed_addr #1 !dbg !667 {
start:
  %ptr.dbg.spill = alloca i32*, align 8
  %self.dbg.spill = alloca %"alloc::vec::Vec<i32>"*, align 8
  store %"alloc::vec::Vec<i32>"* %self, %"alloc::vec::Vec<i32>"** %self.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata %"alloc::vec::Vec<i32>"** %self.dbg.spill, metadata !673, metadata !DIExpression()), !dbg !676
  %_2 = bitcast %"alloc::vec::Vec<i32>"* %self to { i32*, i64 }*, !dbg !677
  %ptr = call i32* @"_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$3ptr17h0db19e861b2d3b30E"({ i32*, i64 }* noalias readonly align 8 dereferenceable(16) %_2), !dbg !677
  store i32* %ptr, i32** %ptr.dbg.spill, align 8, !dbg !677
  call void @llvm.dbg.declare(metadata i32** %ptr.dbg.spill, metadata !674, metadata !DIExpression()), !dbg !678
  br label %bb1, !dbg !677

bb1:                                              ; preds = %start
  %_5 = call zeroext i1 @"_ZN4core3ptr7mut_ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$7is_null17hfb3183277fc6245eE"(i32* %ptr), !dbg !679
  br label %bb2, !dbg !679

bb2:                                              ; preds = %bb1
  %_4 = xor i1 %_5, true, !dbg !680
  call void @llvm.assume(i1 %_4), !dbg !681
  br label %bb3, !dbg !681

bb3:                                              ; preds = %bb2
  ret i32* %ptr, !dbg !682
}

; Function Attrs: nonlazybind uwtable
define internal void @"_ZN5alloc3vec12Vec$LT$T$GT$14from_raw_parts17h24529f0241d1b63fE"(%"alloc::vec::Vec<i32>"* noalias nocapture sret dereferenceable(24) %0, i32* %ptr, i64 %length, i64 %capacity) unnamed_addr #0 !dbg !683 {
start:
  %capacity.dbg.spill = alloca i64, align 8
  %length.dbg.spill = alloca i64, align 8
  %ptr.dbg.spill = alloca i32*, align 8
  store i32* %ptr, i32** %ptr.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i32** %ptr.dbg.spill, metadata !687, metadata !DIExpression()), !dbg !690
  store i64 %length, i64* %length.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i64* %length.dbg.spill, metadata !688, metadata !DIExpression()), !dbg !691
  store i64 %capacity, i64* %capacity.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i64* %capacity.dbg.spill, metadata !689, metadata !DIExpression()), !dbg !692
  %1 = call { i32*, i64 } @"_ZN5alloc7raw_vec15RawVec$LT$T$GT$14from_raw_parts17hcc10cc6b4ed589ffE"(i32* %ptr, i64 %capacity), !dbg !693
  %_4.0 = extractvalue { i32*, i64 } %1, 0, !dbg !693
  %_4.1 = extractvalue { i32*, i64 } %1, 1, !dbg !693
  br label %bb1, !dbg !693

bb1:                                              ; preds = %start
  %2 = bitcast %"alloc::vec::Vec<i32>"* %0 to { i32*, i64 }*, !dbg !694
  %3 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %2, i32 0, i32 0, !dbg !694
  store i32* %_4.0, i32** %3, align 8, !dbg !694
  %4 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %2, i32 0, i32 1, !dbg !694
  store i64 %_4.1, i64* %4, align 8, !dbg !694
  %5 = getelementptr inbounds %"alloc::vec::Vec<i32>", %"alloc::vec::Vec<i32>"* %0, i32 0, i32 3, !dbg !694
  store i64 %length, i64* %5, align 8, !dbg !694
  ret void, !dbg !695
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal i32* @"_ZN5alloc3vec12Vec$LT$T$GT$6as_ptr17h8b923cff056d4624E"(%"alloc::vec::Vec<i32>"* noalias readonly align 8 dereferenceable(24) %self) unnamed_addr #1 !dbg !696 {
start:
  %ptr.dbg.spill = alloca i32*, align 8
  %self.dbg.spill = alloca %"alloc::vec::Vec<i32>"*, align 8
  store %"alloc::vec::Vec<i32>"* %self, %"alloc::vec::Vec<i32>"** %self.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata %"alloc::vec::Vec<i32>"** %self.dbg.spill, metadata !700, metadata !DIExpression()), !dbg !703
  %_3 = bitcast %"alloc::vec::Vec<i32>"* %self to { i32*, i64 }*, !dbg !704
  %ptr = call i32* @"_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$3ptr17h0db19e861b2d3b30E"({ i32*, i64 }* noalias readonly align 8 dereferenceable(16) %_3), !dbg !704
  store i32* %ptr, i32** %ptr.dbg.spill, align 8, !dbg !704
  call void @llvm.dbg.declare(metadata i32** %ptr.dbg.spill, metadata !701, metadata !DIExpression()), !dbg !705
  br label %bb1, !dbg !704

bb1:                                              ; preds = %start
  %_6 = call zeroext i1 @"_ZN4core3ptr7mut_ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$7is_null17hfb3183277fc6245eE"(i32* %ptr), !dbg !706
  br label %bb2, !dbg !706

bb2:                                              ; preds = %bb1
  %_5 = xor i1 %_6, true, !dbg !707
  call void @llvm.assume(i1 %_5), !dbg !708
  br label %bb3, !dbg !708

bb3:                                              ; preds = %bb2
  ret i32* %ptr, !dbg !709
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal i8* @_ZN5alloc5alloc12alloc_zeroed17hd16472e9ffeccab0E(i64 %0, i64 %1) unnamed_addr #1 !dbg !710 {
start:
  %layout = alloca { i64, i64 }, align 8
  %2 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %layout, i32 0, i32 0
  store i64 %0, i64* %2, align 8
  %3 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %layout, i32 0, i32 1
  store i64 %1, i64* %3, align 8
  call void @llvm.dbg.declare(metadata { i64, i64 }* %layout, metadata !715, metadata !DIExpression()), !dbg !716
  %_2 = call i64 @_ZN4core5alloc6layout6Layout4size17hef4968c7788a7963E({ i64, i64 }* noalias readonly align 8 dereferenceable(16) %layout), !dbg !717
  br label %bb1, !dbg !717

bb1:                                              ; preds = %start
  %_4 = call i64 @_ZN4core5alloc6layout6Layout5align17h4710743b16bc1ec3E({ i64, i64 }* noalias readonly align 8 dereferenceable(16) %layout), !dbg !718
  br label %bb2, !dbg !718

bb2:                                              ; preds = %bb1
  %4 = call i8* @__rust_alloc_zeroed(i64 %_2, i64 %_4), !dbg !719
  br label %bb3, !dbg !719

bb3:                                              ; preds = %bb2
  ret i8* %4, !dbg !720
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal i8* @_ZN5alloc5alloc15exchange_malloc17h264145ac6d203f21E(i64 %size, i64 %align) unnamed_addr #1 !dbg !721 {
start:
  %memory.dbg.spill = alloca { i8*, i64 }, align 8
  %layout.dbg.spill = alloca { i64, i64 }, align 8
  %align.dbg.spill = alloca i64, align 8
  %size.dbg.spill = alloca i64, align 8
  %_8 = alloca %"alloc::alloc::Global", align 1
  %_6 = alloca { i8*, i64 }, align 8
  store i64 %size, i64* %size.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i64* %size.dbg.spill, metadata !725, metadata !DIExpression()), !dbg !735
  store i64 %align, i64* %align.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i64* %align.dbg.spill, metadata !726, metadata !DIExpression()), !dbg !736
  %0 = call { i64, i64 } @_ZN4core5alloc6layout6Layout25from_size_align_unchecked17h4a9e124a64866af6E(i64 %size, i64 %align), !dbg !737
  %layout.0 = extractvalue { i64, i64 } %0, 0, !dbg !737
  %layout.1 = extractvalue { i64, i64 } %0, 1, !dbg !737
  %1 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %layout.dbg.spill, i32 0, i32 0, !dbg !737
  store i64 %layout.0, i64* %1, align 8, !dbg !737
  %2 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %layout.dbg.spill, i32 0, i32 1, !dbg !737
  store i64 %layout.1, i64* %2, align 8, !dbg !737
  call void @llvm.dbg.declare(metadata { i64, i64 }* %layout.dbg.spill, metadata !727, metadata !DIExpression()), !dbg !738
  br label %bb1, !dbg !737

bb1:                                              ; preds = %start
  %3 = call { i8*, i64 } @"_ZN62_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..AllocRef$GT$5alloc17h545ef1d2b7748796E"(%"alloc::alloc::Global"* nonnull align 1 %_8, i64 %layout.0, i64 %layout.1, i1 zeroext false), !dbg !739
  store { i8*, i64 } %3, { i8*, i64 }* %_6, align 8, !dbg !739
  br label %bb2, !dbg !739

bb2:                                              ; preds = %bb1
  %4 = bitcast { i8*, i64 }* %_6 to {}**, !dbg !740
  %5 = load {}*, {}** %4, align 8, !dbg !740
  %6 = icmp ule {}* %5, null, !dbg !740
  %_11 = select i1 %6, i64 1, i64 0, !dbg !740
  switch i64 %_11, label %bb4 [
    i64 0, label %bb5
    i64 1, label %bb3
  ], !dbg !740

bb3:                                              ; preds = %bb2
  call void @_ZN5alloc5alloc18handle_alloc_error17h1c4ca6cc77cf210bE(i64 %layout.0, i64 %layout.1), !dbg !741
  unreachable, !dbg !741

bb4:                                              ; preds = %bb2
  unreachable, !dbg !739

bb5:                                              ; preds = %bb2
  %7 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %_6, i32 0, i32 0, !dbg !742
  %memory.0 = load i8*, i8** %7, align 8, !dbg !742, !nonnull !4
  %8 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %_6, i32 0, i32 1, !dbg !742
  %memory.1 = load i64, i64* %8, align 8, !dbg !742
  %9 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %memory.dbg.spill, i32 0, i32 0, !dbg !742
  store i8* %memory.0, i8** %9, align 8, !dbg !742
  %10 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %memory.dbg.spill, i32 0, i32 1, !dbg !742
  store i64 %memory.1, i64* %10, align 8, !dbg !742
  call void @llvm.dbg.declare(metadata { i8*, i64 }* %memory.dbg.spill, metadata !729, metadata !DIExpression()), !dbg !743
  %11 = call i8* @"_ZN4core3ptr8non_null16NonNull$LT$T$GT$6as_ptr17h88b5fbb7bea35fd2E"(i8* nonnull %memory.0), !dbg !744
  br label %bb6, !dbg !744

bb6:                                              ; preds = %bb5
  ret i8* %11, !dbg !745
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal i8* @_ZN5alloc5alloc5alloc17h2e7b42a5e27b448bE(i64 %0, i64 %1) unnamed_addr #1 !dbg !746 {
start:
  %layout = alloca { i64, i64 }, align 8
  %2 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %layout, i32 0, i32 0
  store i64 %0, i64* %2, align 8
  %3 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %layout, i32 0, i32 1
  store i64 %1, i64* %3, align 8
  call void @llvm.dbg.declare(metadata { i64, i64 }* %layout, metadata !748, metadata !DIExpression()), !dbg !749
  %_2 = call i64 @_ZN4core5alloc6layout6Layout4size17hef4968c7788a7963E({ i64, i64 }* noalias readonly align 8 dereferenceable(16) %layout), !dbg !750
  br label %bb1, !dbg !750

bb1:                                              ; preds = %start
  %_4 = call i64 @_ZN4core5alloc6layout6Layout5align17h4710743b16bc1ec3E({ i64, i64 }* noalias readonly align 8 dereferenceable(16) %layout), !dbg !751
  br label %bb2, !dbg !751

bb2:                                              ; preds = %bb1
  %4 = call i8* @__rust_alloc(i64 %_2, i64 %_4), !dbg !752
  br label %bb3, !dbg !752

bb3:                                              ; preds = %bb2
  ret i8* %4, !dbg !753
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal void @_ZN5alloc5alloc7dealloc17hdbb4828ab2871b7dE(i8* %ptr, i64 %0, i64 %1) unnamed_addr #1 !dbg !754 {
start:
  %ptr.dbg.spill = alloca i8*, align 8
  %layout = alloca { i64, i64 }, align 8
  %2 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %layout, i32 0, i32 0
  store i64 %0, i64* %2, align 8
  %3 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %layout, i32 0, i32 1
  store i64 %1, i64* %3, align 8
  store i8* %ptr, i8** %ptr.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i8** %ptr.dbg.spill, metadata !758, metadata !DIExpression()), !dbg !760
  call void @llvm.dbg.declare(metadata { i64, i64 }* %layout, metadata !759, metadata !DIExpression()), !dbg !761
  %_4 = call i64 @_ZN4core5alloc6layout6Layout4size17hef4968c7788a7963E({ i64, i64 }* noalias readonly align 8 dereferenceable(16) %layout), !dbg !762
  br label %bb1, !dbg !762

bb1:                                              ; preds = %start
  %_6 = call i64 @_ZN4core5alloc6layout6Layout5align17h4710743b16bc1ec3E({ i64, i64 }* noalias readonly align 8 dereferenceable(16) %layout), !dbg !763
  br label %bb2, !dbg !763

bb2:                                              ; preds = %bb1
  call void @__rust_dealloc(i8* %ptr, i64 %_4, i64 %_6), !dbg !764
  br label %bb3, !dbg !764

bb3:                                              ; preds = %bb2
  ret void, !dbg !765
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal void @_ZN5alloc5alloc8box_free17h92feb61dba2592c5E(i32* nonnull %0, i64 %1) unnamed_addr #1 !dbg !766 {
start:
  %layout.dbg.spill = alloca { i64, i64 }, align 8
  %align.dbg.spill = alloca i64, align 8
  %2 = alloca i64, align 8
  %size.dbg.spill = alloca i64, align 8
  %3 = alloca i64, align 8
  %_14 = alloca %"alloc::alloc::Global", align 1
  %ptr = alloca { i32*, i64 }, align 8
  %4 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %ptr, i32 0, i32 0
  store i32* %0, i32** %4, align 8
  %5 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %ptr, i32 0, i32 1
  store i64 %1, i64* %5, align 8
  call void @llvm.dbg.declare(metadata { i32*, i64 }* %ptr, metadata !770, metadata !DIExpression()), !dbg !777
  %6 = call { [0 x i32]*, i64 } @"_ZN4core3ptr6unique15Unique$LT$T$GT$6as_ref17h5c87c40cabb0fec7E"({ i32*, i64 }* noalias readonly align 8 dereferenceable(16) %ptr), !dbg !778
  %_4.0 = extractvalue { [0 x i32]*, i64 } %6, 0, !dbg !778
  %_4.1 = extractvalue { [0 x i32]*, i64 } %6, 1, !dbg !778
  br label %bb1, !dbg !778

bb1:                                              ; preds = %start
  %7 = mul i64 %_4.1, 4, !dbg !779
  store i64 %7, i64* %3, align 8, !dbg !779
  %size = load i64, i64* %3, align 8, !dbg !779
  store i64 %size, i64* %size.dbg.spill, align 8, !dbg !779
  call void @llvm.dbg.declare(metadata i64* %size.dbg.spill, metadata !771, metadata !DIExpression()), !dbg !780
  br label %bb2, !dbg !779

bb2:                                              ; preds = %bb1
  %8 = call { [0 x i32]*, i64 } @"_ZN4core3ptr6unique15Unique$LT$T$GT$6as_ref17h5c87c40cabb0fec7E"({ i32*, i64 }* noalias readonly align 8 dereferenceable(16) %ptr), !dbg !781
  %_8.0 = extractvalue { [0 x i32]*, i64 } %8, 0, !dbg !781
  %_8.1 = extractvalue { [0 x i32]*, i64 } %8, 1, !dbg !781
  br label %bb3, !dbg !781

bb3:                                              ; preds = %bb2
  %9 = mul i64 %_8.1, 4, !dbg !782
  store i64 4, i64* %2, align 8, !dbg !782
  %align = load i64, i64* %2, align 8, !dbg !782
  store i64 %align, i64* %align.dbg.spill, align 8, !dbg !782
  call void @llvm.dbg.declare(metadata i64* %align.dbg.spill, metadata !773, metadata !DIExpression()), !dbg !783
  br label %bb4, !dbg !782

bb4:                                              ; preds = %bb3
  %10 = call { i64, i64 } @_ZN4core5alloc6layout6Layout25from_size_align_unchecked17h4a9e124a64866af6E(i64 %size, i64 %align), !dbg !784
  %layout.0 = extractvalue { i64, i64 } %10, 0, !dbg !784
  %layout.1 = extractvalue { i64, i64 } %10, 1, !dbg !784
  %11 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %layout.dbg.spill, i32 0, i32 0, !dbg !784
  store i64 %layout.0, i64* %11, align 8, !dbg !784
  %12 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %layout.dbg.spill, i32 0, i32 1, !dbg !784
  store i64 %layout.1, i64* %12, align 8, !dbg !784
  call void @llvm.dbg.declare(metadata { i64, i64 }* %layout.dbg.spill, metadata !775, metadata !DIExpression()), !dbg !785
  br label %bb5, !dbg !784

bb5:                                              ; preds = %bb4
  %13 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %ptr, i32 0, i32 0, !dbg !786
  %_17.0 = load i32*, i32** %13, align 8, !dbg !786, !nonnull !4
  %14 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %ptr, i32 0, i32 1, !dbg !786
  %_17.1 = load i64, i64* %14, align 8, !dbg !786
  %_16 = call nonnull i8* @"_ZN4core3ptr6unique15Unique$LT$T$GT$4cast17hd0db8cb4ed1e5d02E"(i32* nonnull %_17.0, i64 %_17.1), !dbg !786
  br label %bb6, !dbg !786

bb6:                                              ; preds = %bb5
  %_15 = call nonnull i8* @"_ZN50_$LT$T$u20$as$u20$core..convert..Into$LT$U$GT$$GT$4into17h0a0f20c1f95e1419E"(i8* nonnull %_16), !dbg !786
  br label %bb7, !dbg !786

bb7:                                              ; preds = %bb6
  call void @"_ZN62_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..AllocRef$GT$7dealloc17h3825975e1eb1fd39E"(%"alloc::alloc::Global"* nonnull align 1 %_14, i8* nonnull %_15, i64 %layout.0, i64 %layout.1), !dbg !787
  br label %bb8, !dbg !787

bb8:                                              ; preds = %bb7
  ret void, !dbg !788
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal { [0 x i32]*, i64 } @"_ZN5alloc5boxed12Box$LT$T$GT$4leak17hf65e4cb473ed6749E"([0 x i32]* noalias nonnull align 4 %b.0, i64 %b.1) unnamed_addr #1 !dbg !789 {
start:
  %self.dbg.spill.i = alloca { i32*, i64 }*, align 8
  call void @llvm.dbg.declare(metadata { i32*, i64 }** %self.dbg.spill.i, metadata !801, metadata !DIExpression()), !dbg !814
  %value.dbg.spill.i = alloca { [0 x i32]*, i64 }, align 8
  call void @llvm.dbg.declare(metadata { [0 x i32]*, i64 }* %value.dbg.spill.i, metadata !816, metadata !DIExpression()), !dbg !821
  %0 = alloca { i32*, i64 }, align 8
  %b.dbg.spill = alloca { [0 x i32]*, i64 }, align 8
  %_9 = alloca { i32*, i64 }, align 8
  %1 = getelementptr inbounds { [0 x i32]*, i64 }, { [0 x i32]*, i64 }* %b.dbg.spill, i32 0, i32 0
  store [0 x i32]* %b.0, [0 x i32]** %1, align 8
  %2 = getelementptr inbounds { [0 x i32]*, i64 }, { [0 x i32]*, i64 }* %b.dbg.spill, i32 0, i32 1
  store i64 %b.1, i64* %2, align 8
  call void @llvm.dbg.declare(metadata { [0 x i32]*, i64 }* %b.dbg.spill, metadata !800, metadata !DIExpression()), !dbg !823
  %3 = getelementptr inbounds { [0 x i32]*, i64 }, { [0 x i32]*, i64 }* %value.dbg.spill.i, i32 0, i32 0
  store [0 x i32]* %b.0, [0 x i32]** %3, align 8, !noalias !824
  %4 = getelementptr inbounds { [0 x i32]*, i64 }, { [0 x i32]*, i64 }* %value.dbg.spill.i, i32 0, i32 1
  store i64 %b.1, i64* %4, align 8, !noalias !824
  %5 = bitcast { i32*, i64 }* %0 to { [0 x i32]*, i64 }*, !dbg !827
  %6 = getelementptr inbounds { [0 x i32]*, i64 }, { [0 x i32]*, i64 }* %5, i32 0, i32 0, !dbg !827
  store [0 x i32]* %b.0, [0 x i32]** %6, align 8, !dbg !827, !noalias !824
  %7 = getelementptr inbounds { [0 x i32]*, i64 }, { [0 x i32]*, i64 }* %5, i32 0, i32 1, !dbg !827
  store i64 %b.1, i64* %7, align 8, !dbg !827, !noalias !824
  %8 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %0, i32 0, i32 0, !dbg !828
  %9 = load i32*, i32** %8, align 8, !dbg !828, !noalias !824, !nonnull !4
  %10 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %0, i32 0, i32 1, !dbg !828
  %11 = load i64, i64* %10, align 8, !dbg !828, !noalias !824
  %12 = insertvalue { i32*, i64 } undef, i32* %9, 0, !dbg !828
  %13 = insertvalue { i32*, i64 } %12, i64 %11, 1, !dbg !828
  store { i32*, i64 } %13, { i32*, i64 }* %_9, align 8, !dbg !829
  br label %bb1, !dbg !829

bb1:                                              ; preds = %start
  store { i32*, i64 }* %_9, { i32*, i64 }** %self.dbg.spill.i, align 8
  %_3.i = bitcast { i32*, i64 }* %_9 to { [0 x i32]*, i64 }*, !dbg !830
  br label %bb2, !dbg !829

bb2:                                              ; preds = %bb1
  %14 = bitcast { [0 x i32]*, i64 }* %_3.i to { i32*, i64 }*, !dbg !829
  %15 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %14, i32 0, i32 0, !dbg !829
  %_6.0 = load i32*, i32** %15, align 8, !dbg !829, !nonnull !4
  %16 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %14, i32 0, i32 1, !dbg !829
  %_6.1 = load i64, i64* %16, align 8, !dbg !829
  %17 = call { [0 x i32]*, i64 } @"_ZN4core3ptr6unique15Unique$LT$T$GT$6as_ptr17hcada7862f094e013E"(i32* nonnull %_6.0, i64 %_6.1), !dbg !829
  %_5.0 = extractvalue { [0 x i32]*, i64 } %17, 0, !dbg !829
  %_5.1 = extractvalue { [0 x i32]*, i64 } %17, 1, !dbg !829
  br label %bb3, !dbg !829

bb3:                                              ; preds = %bb2
  %18 = insertvalue { [0 x i32]*, i64 } undef, [0 x i32]* %_5.0, 0, !dbg !831
  %19 = insertvalue { [0 x i32]*, i64 } %18, i64 %_5.1, 1, !dbg !831
  ret { [0 x i32]*, i64 } %19, !dbg !831
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal { [0 x i32]*, i64 } @"_ZN5alloc5boxed12Box$LT$T$GT$8into_raw17h8c8af3601ff3380bE"([0 x i32]* noalias nonnull align 4 %b.0, i64 %b.1) unnamed_addr #1 !dbg !832 {
start:
  %b.dbg.spill = alloca { [0 x i32]*, i64 }, align 8
  %0 = getelementptr inbounds { [0 x i32]*, i64 }, { [0 x i32]*, i64 }* %b.dbg.spill, i32 0, i32 0
  store [0 x i32]* %b.0, [0 x i32]** %0, align 8
  %1 = getelementptr inbounds { [0 x i32]*, i64 }, { [0 x i32]*, i64 }* %b.dbg.spill, i32 0, i32 1
  store i64 %b.1, i64* %1, align 8
  call void @llvm.dbg.declare(metadata { [0 x i32]*, i64 }* %b.dbg.spill, metadata !836, metadata !DIExpression()), !dbg !837
  %2 = call { [0 x i32]*, i64 } @"_ZN5alloc5boxed12Box$LT$T$GT$4leak17hf65e4cb473ed6749E"([0 x i32]* noalias nonnull align 4 %b.0, i64 %b.1), !dbg !838
  %_2.0 = extractvalue { [0 x i32]*, i64 } %2, 0, !dbg !838
  %_2.1 = extractvalue { [0 x i32]*, i64 } %2, 1, !dbg !838
  br label %bb1, !dbg !838

bb1:                                              ; preds = %start
  %3 = insertvalue { [0 x i32]*, i64 } undef, [0 x i32]* %_2.0, 0, !dbg !839
  %4 = insertvalue { [0 x i32]*, i64 } %3, i64 %_2.1, 1, !dbg !839
  ret { [0 x i32]*, i64 } %4, !dbg !839
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal void @"_ZN5alloc5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$8into_vec17h8f0ff62baaf1865fE"(%"alloc::vec::Vec<i32>"* noalias nocapture sret dereferenceable(24) %0, [0 x i32]* noalias nonnull align 4 %self.0, i64 %self.1) unnamed_addr #1 !dbg !840 {
start:
  %self.dbg.spill = alloca { [0 x i32]*, i64 }, align 8
  %1 = getelementptr inbounds { [0 x i32]*, i64 }, { [0 x i32]*, i64 }* %self.dbg.spill, i32 0, i32 0
  store [0 x i32]* %self.0, [0 x i32]** %1, align 8
  %2 = getelementptr inbounds { [0 x i32]*, i64 }, { [0 x i32]*, i64 }* %self.dbg.spill, i32 0, i32 1
  store i64 %self.1, i64* %2, align 8
  call void @llvm.dbg.declare(metadata { [0 x i32]*, i64 }* %self.dbg.spill, metadata !847, metadata !DIExpression()), !dbg !848
  call void @_ZN5alloc5slice4hack8into_vec17h82c5c4ef3b4181bfE(%"alloc::vec::Vec<i32>"* noalias nocapture sret dereferenceable(24) %0, [0 x i32]* noalias nonnull align 4 %self.0, i64 %self.1), !dbg !849
  br label %bb1, !dbg !849

bb1:                                              ; preds = %start
  ret void, !dbg !850
}

; Function Attrs: nonlazybind uwtable
define internal void @_ZN5alloc5slice4hack8into_vec17h82c5c4ef3b4181bfE(%"alloc::vec::Vec<i32>"* noalias nocapture sret dereferenceable(24) %0, [0 x i32]* noalias nonnull align 4 %1, i64 %2) unnamed_addr #0 personality i32 (i32, i32, i64, %"unwind::libunwind::_Unwind_Exception"*, %"unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality !dbg !851 {
start:
  %b.dbg.spill = alloca { [0 x i32]*, i64 }, align 8
  %len.dbg.spill = alloca i64, align 8
  %3 = alloca { i8*, i32 }, align 8
  %_10 = alloca i8, align 1
  %b = alloca { [0 x i32]*, i64 }, align 8
  %4 = getelementptr inbounds { [0 x i32]*, i64 }, { [0 x i32]*, i64 }* %b, i32 0, i32 0
  store [0 x i32]* %1, [0 x i32]** %4, align 8
  %5 = getelementptr inbounds { [0 x i32]*, i64 }, { [0 x i32]*, i64 }* %b, i32 0, i32 1
  store i64 %2, i64* %5, align 8
  call void @llvm.dbg.declare(metadata { [0 x i32]*, i64 }* %b, metadata !854, metadata !DIExpression()), !dbg !859
  store i8 0, i8* %_10, align 1, !dbg !860
  store i8 1, i8* %_10, align 1, !dbg !860
  %6 = getelementptr inbounds { [0 x i32]*, i64 }, { [0 x i32]*, i64 }* %b, i32 0, i32 0, !dbg !861
  %_3.0 = load [0 x i32]*, [0 x i32]** %6, align 8, !dbg !861, !nonnull !4
  %7 = getelementptr inbounds { [0 x i32]*, i64 }, { [0 x i32]*, i64 }* %b, i32 0, i32 1, !dbg !861
  %_3.1 = load i64, i64* %7, align 8, !dbg !861
  %len = invoke i64 @"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17hf5557d2830fe6f05E"([0 x i32]* noalias nonnull readonly align 4 %_3.0, i64 %_3.1)
          to label %bb2 unwind label %cleanup, !dbg !861

bb1:                                              ; preds = %bb6, %bb5
  %8 = bitcast { i8*, i32 }* %3 to i8**, !dbg !862
  %9 = load i8*, i8** %8, align 8, !dbg !862
  %10 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %3, i32 0, i32 1, !dbg !862
  %11 = load i32, i32* %10, align 8, !dbg !862
  %12 = insertvalue { i8*, i32 } undef, i8* %9, 0, !dbg !862
  %13 = insertvalue { i8*, i32 } %12, i32 %11, 1, !dbg !862
  resume { i8*, i32 } %13, !dbg !862

bb2:                                              ; preds = %start
  store i64 %len, i64* %len.dbg.spill, align 8, !dbg !861
  call void @llvm.dbg.declare(metadata i64* %len.dbg.spill, metadata !855, metadata !DIExpression()), !dbg !863
  store i8 0, i8* %_10, align 1, !dbg !864
  %14 = getelementptr inbounds { [0 x i32]*, i64 }, { [0 x i32]*, i64 }* %b, i32 0, i32 0, !dbg !864
  %_5.0 = load [0 x i32]*, [0 x i32]** %14, align 8, !dbg !864, !nonnull !4
  %15 = getelementptr inbounds { [0 x i32]*, i64 }, { [0 x i32]*, i64 }* %b, i32 0, i32 1, !dbg !864
  %_5.1 = load i64, i64* %15, align 8, !dbg !864
  %16 = invoke { [0 x i32]*, i64 } @"_ZN5alloc5boxed12Box$LT$T$GT$8into_raw17h8c8af3601ff3380bE"([0 x i32]* noalias nonnull align 4 %_5.0, i64 %_5.1)
          to label %bb3 unwind label %cleanup, !dbg !865

bb3:                                              ; preds = %bb2
  %b.0 = extractvalue { [0 x i32]*, i64 } %16, 0, !dbg !865
  %b.1 = extractvalue { [0 x i32]*, i64 } %16, 1, !dbg !865
  %17 = getelementptr inbounds { [0 x i32]*, i64 }, { [0 x i32]*, i64 }* %b.dbg.spill, i32 0, i32 0, !dbg !865
  store [0 x i32]* %b.0, [0 x i32]** %17, align 8, !dbg !865
  %18 = getelementptr inbounds { [0 x i32]*, i64 }, { [0 x i32]*, i64 }* %b.dbg.spill, i32 0, i32 1, !dbg !865
  store i64 %b.1, i64* %18, align 8, !dbg !865
  call void @llvm.dbg.declare(metadata { [0 x i32]*, i64 }* %b.dbg.spill, metadata !857, metadata !DIExpression()), !dbg !866
  %_6 = bitcast [0 x i32]* %b.0 to i32*, !dbg !867
  invoke void @"_ZN5alloc3vec12Vec$LT$T$GT$14from_raw_parts17h24529f0241d1b63fE"(%"alloc::vec::Vec<i32>"* noalias nocapture sret dereferenceable(24) %0, i32* %_6, i64 %len, i64 %len)
          to label %bb4 unwind label %cleanup, !dbg !868

bb4:                                              ; preds = %bb3
  ret void, !dbg !869

bb5:                                              ; preds = %bb6
  store i8 0, i8* %_10, align 1, !dbg !870
  call void @_ZN4core3ptr13drop_in_place17h6269e61f07cd105dE({ [0 x i32]*, i64 }* %b) #10, !dbg !870
  br label %bb1, !dbg !870

bb6:                                              ; preds = %cleanup
  %19 = load i8, i8* %_10, align 1, !dbg !870, !range !262
  %20 = trunc i8 %19 to i1, !dbg !870
  br i1 %20, label %bb5, label %bb1, !dbg !870

cleanup:                                          ; preds = %bb3, %bb2, %start
  %21 = landingpad { i8*, i32 }
          cleanup
  %22 = extractvalue { i8*, i32 } %21, 0
  %23 = extractvalue { i8*, i32 } %21, 1
  %24 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %3, i32 0, i32 0
  store i8* %22, i8** %24, align 8
  %25 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %3, i32 0, i32 1
  store i32 %23, i32* %25, align 8
  br label %bb6
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal { i32*, i64 } @"_ZN5alloc7raw_vec15RawVec$LT$T$GT$14from_raw_parts17hcc10cc6b4ed589ffE"(i32* %ptr, i64 %capacity) unnamed_addr #1 !dbg !871 {
start:
  %capacity.dbg.spill = alloca i64, align 8
  %ptr.dbg.spill = alloca i32*, align 8
  store i32* %ptr, i32** %ptr.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i32** %ptr.dbg.spill, metadata !876, metadata !DIExpression()), !dbg !878
  store i64 %capacity, i64* %capacity.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i64* %capacity.dbg.spill, metadata !877, metadata !DIExpression()), !dbg !879
  %0 = call { i32*, i64 } @"_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$17from_raw_parts_in17h1489e32a0daf47edE"(i32* %ptr, i64 %capacity), !dbg !880
  %1 = extractvalue { i32*, i64 } %0, 0, !dbg !880
  %2 = extractvalue { i32*, i64 } %0, 1, !dbg !880
  br label %bb1, !dbg !880

bb1:                                              ; preds = %start
  %3 = insertvalue { i32*, i64 } undef, i32* %1, 0, !dbg !881
  %4 = insertvalue { i32*, i64 } %3, i64 %2, 1, !dbg !881
  ret { i32*, i64 } %4, !dbg !881
}

; Function Attrs: nonlazybind uwtable
define internal void @"_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$14current_memory17h29a0e371622c4c5bE"(%"core::option::Option<(core::ptr::non_null::NonNull<u8>, core::alloc::layout::Layout)>"* noalias nocapture sret dereferenceable(24) %0, { i32*, i64 }* noalias readonly align 8 dereferenceable(16) %self) unnamed_addr #0 !dbg !882 {
start:
  %1 = alloca i64, align 8
  %2 = alloca i64, align 8
  %3 = alloca i64, align 8
  %layout.dbg.spill = alloca { i64, i64 }, align 8
  %size.dbg.spill = alloca i64, align 8
  %align.dbg.spill = alloca i64, align 8
  %self.dbg.spill = alloca { i32*, i64 }*, align 8
  %_15 = alloca { [0 x i64], i8*, [0 x i64], { i64, i64 }, [0 x i64] }, align 8
  %_2 = alloca i8, align 1
  store { i32*, i64 }* %self, { i32*, i64 }** %self.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata { i32*, i64 }** %self.dbg.spill, metadata !903, metadata !DIExpression()), !dbg !910
  store i64 4, i64* %3, align 8, !dbg !911
  %4 = load i64, i64* %3, align 8, !dbg !911
  br label %bb5, !dbg !913

bb1:                                              ; preds = %bb5, %bb3
  store i8 1, i8* %_2, align 1, !dbg !913
  br label %bb4, !dbg !913

bb2:                                              ; preds = %bb3
  store i8 0, i8* %_2, align 1, !dbg !913
  br label %bb4, !dbg !913

bb3:                                              ; preds = %bb5
  %5 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %self, i32 0, i32 1, !dbg !914
  %_6 = load i64, i64* %5, align 8, !dbg !914
  %_5 = icmp eq i64 %_6, 0, !dbg !914
  br i1 %_5, label %bb1, label %bb2, !dbg !913

bb4:                                              ; preds = %bb2, %bb1
  %6 = load i8, i8* %_2, align 1, !dbg !915, !range !262
  %7 = trunc i8 %6 to i1, !dbg !915
  br i1 %7, label %bb7, label %bb6, !dbg !915

bb5:                                              ; preds = %start
  %_3 = icmp eq i64 %4, 0, !dbg !913
  br i1 %_3, label %bb1, label %bb3, !dbg !913

bb6:                                              ; preds = %bb4
  store i64 4, i64* %2, align 8, !dbg !916
  %8 = load i64, i64* %2, align 8, !dbg !916
  store i64 %8, i64* %align.dbg.spill, align 8, !dbg !919
  call void @llvm.dbg.declare(metadata i64* %align.dbg.spill, metadata !904, metadata !DIExpression()), !dbg !920
  br label %bb8, !dbg !919

bb7:                                              ; preds = %bb4
  %9 = bitcast %"core::option::Option<(core::ptr::non_null::NonNull<u8>, core::alloc::layout::Layout)>"* %0 to {}**, !dbg !921
  store {}* null, {}** %9, align 8, !dbg !921
  br label %bb14, !dbg !915

bb8:                                              ; preds = %bb6
  store i64 4, i64* %1, align 8, !dbg !922
  %10 = load i64, i64* %1, align 8, !dbg !922
  br label %bb9, !dbg !924

bb9:                                              ; preds = %bb8
  %11 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %self, i32 0, i32 1, !dbg !925
  %_10 = load i64, i64* %11, align 8, !dbg !925
  %12 = call { i64, i1 } @llvm.umul.with.overflow.i64(i64 %10, i64 %_10), !dbg !924
  %_11.0 = extractvalue { i64, i1 } %12, 0, !dbg !924
  %_11.1 = extractvalue { i64, i1 } %12, 1, !dbg !924
  %13 = call i1 @llvm.expect.i1(i1 %_11.1, i1 false), !dbg !924
  br i1 %13, label %panic, label %bb10, !dbg !924

bb10:                                             ; preds = %bb9
  store i64 %_11.0, i64* %size.dbg.spill, align 8, !dbg !924
  call void @llvm.dbg.declare(metadata i64* %size.dbg.spill, metadata !906, metadata !DIExpression()), !dbg !926
  %14 = call { i64, i64 } @_ZN4core5alloc6layout6Layout25from_size_align_unchecked17h4a9e124a64866af6E(i64 %_11.0, i64 %8), !dbg !927
  %layout.0 = extractvalue { i64, i64 } %14, 0, !dbg !927
  %layout.1 = extractvalue { i64, i64 } %14, 1, !dbg !927
  %15 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %layout.dbg.spill, i32 0, i32 0, !dbg !927
  store i64 %layout.0, i64* %15, align 8, !dbg !927
  %16 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %layout.dbg.spill, i32 0, i32 1, !dbg !927
  store i64 %layout.1, i64* %16, align 8, !dbg !927
  call void @llvm.dbg.declare(metadata { i64, i64 }* %layout.dbg.spill, metadata !908, metadata !DIExpression()), !dbg !928
  br label %bb11, !dbg !927

bb11:                                             ; preds = %bb10
  %17 = bitcast { i32*, i64 }* %self to i32**, !dbg !929
  %_18 = load i32*, i32** %17, align 8, !dbg !929, !nonnull !4
  %_17 = call nonnull i8* @"_ZN4core3ptr6unique15Unique$LT$T$GT$4cast17h373689ae3567ff9aE"(i32* nonnull %_18), !dbg !929
  br label %bb12, !dbg !929

bb12:                                             ; preds = %bb11
  %_16 = call nonnull i8* @"_ZN50_$LT$T$u20$as$u20$core..convert..Into$LT$U$GT$$GT$4into17h0a0f20c1f95e1419E"(i8* nonnull %_17), !dbg !929
  br label %bb13, !dbg !929

bb13:                                             ; preds = %bb12
  %18 = bitcast { [0 x i64], i8*, [0 x i64], { i64, i64 }, [0 x i64] }* %_15 to i8**, !dbg !930
  store i8* %_16, i8** %18, align 8, !dbg !930
  %19 = getelementptr inbounds { [0 x i64], i8*, [0 x i64], { i64, i64 }, [0 x i64] }, { [0 x i64], i8*, [0 x i64], { i64, i64 }, [0 x i64] }* %_15, i32 0, i32 3, !dbg !930
  %20 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %19, i32 0, i32 0, !dbg !930
  store i64 %layout.0, i64* %20, align 8, !dbg !930
  %21 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %19, i32 0, i32 1, !dbg !930
  store i64 %layout.1, i64* %21, align 8, !dbg !930
  %22 = bitcast %"core::option::Option<(core::ptr::non_null::NonNull<u8>, core::alloc::layout::Layout)>"* %0 to %"core::option::Option<(core::ptr::non_null::NonNull<u8>, core::alloc::layout::Layout)>::Some"*, !dbg !931
  %23 = bitcast %"core::option::Option<(core::ptr::non_null::NonNull<u8>, core::alloc::layout::Layout)>::Some"* %22 to { [0 x i64], i8*, [0 x i64], { i64, i64 }, [0 x i64] }*, !dbg !931
  %24 = bitcast { [0 x i64], i8*, [0 x i64], { i64, i64 }, [0 x i64] }* %23 to i8*, !dbg !931
  %25 = bitcast { [0 x i64], i8*, [0 x i64], { i64, i64 }, [0 x i64] }* %_15 to i8*, !dbg !931
  call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %24, i8* align 8 %25, i64 24, i1 false), !dbg !931
  br label %bb14, !dbg !915

bb14:                                             ; preds = %bb13, %bb7
  ret void, !dbg !932

panic:                                            ; preds = %bb9
  call void @_ZN4core9panicking5panic17h08cbe4e12d51a418E([0 x i8]* noalias nonnull readonly align 1 bitcast ([33 x i8]* @str.2 to [0 x i8]*), i64 33, %"core::panic::Location"* noalias readonly align 8 dereferenceable(24) bitcast (<{ i8*, [16 x i8] }>* @alloc32 to %"core::panic::Location"*)), !dbg !924
  unreachable, !dbg !924
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal { i32*, i64 } @"_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$17from_raw_parts_in17h1489e32a0daf47edE"(i32* %ptr, i64 %capacity) unnamed_addr #1 personality i32 (i32, i32, i64, %"unwind::libunwind::_Unwind_Exception"*, %"unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality !dbg !933 {
start:
  %0 = alloca { i8*, i32 }, align 8
  %a.dbg.spill = alloca %"alloc::alloc::Global", align 1
  %capacity.dbg.spill = alloca i64, align 8
  %ptr.dbg.spill = alloca i32*, align 8
  %1 = alloca { i32*, i64 }, align 8
  store i32* %ptr, i32** %ptr.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i32** %ptr.dbg.spill, metadata !937, metadata !DIExpression()), !dbg !940
  store i64 %capacity, i64* %capacity.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i64* %capacity.dbg.spill, metadata !938, metadata !DIExpression()), !dbg !941
  call void @llvm.dbg.declare(metadata %"alloc::alloc::Global"* %a.dbg.spill, metadata !939, metadata !DIExpression()), !dbg !942
  %_4 = invoke nonnull i32* @"_ZN4core3ptr6unique15Unique$LT$T$GT$13new_unchecked17h8ddd6ca994aafd6fE"(i32* %ptr)
          to label %bb2 unwind label %cleanup, !dbg !943

bb1:                                              ; preds = %bb3
  %2 = bitcast { i8*, i32 }* %0 to i8**, !dbg !944
  %3 = load i8*, i8** %2, align 8, !dbg !944
  %4 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %0, i32 0, i32 1, !dbg !944
  %5 = load i32, i32* %4, align 8, !dbg !944
  %6 = insertvalue { i8*, i32 } undef, i8* %3, 0, !dbg !944
  %7 = insertvalue { i8*, i32 } %6, i32 %5, 1, !dbg !944
  resume { i8*, i32 } %7, !dbg !944

bb2:                                              ; preds = %start
  %8 = bitcast { i32*, i64 }* %1 to i32**, !dbg !945
  store i32* %_4, i32** %8, align 8, !dbg !945
  %9 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %1, i32 0, i32 1, !dbg !945
  store i64 %capacity, i64* %9, align 8, !dbg !945
  %10 = bitcast { i32*, i64 }* %1 to %"alloc::alloc::Global"*, !dbg !945
  %11 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %1, i32 0, i32 0, !dbg !946
  %12 = load i32*, i32** %11, align 8, !dbg !946, !nonnull !4
  %13 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %1, i32 0, i32 1, !dbg !946
  %14 = load i64, i64* %13, align 8, !dbg !946
  %15 = insertvalue { i32*, i64 } undef, i32* %12, 0, !dbg !946
  %16 = insertvalue { i32*, i64 } %15, i64 %14, 1, !dbg !946
  ret { i32*, i64 } %16, !dbg !946

bb3:                                              ; preds = %cleanup
  br label %bb1, !dbg !947

cleanup:                                          ; preds = %start
  %17 = landingpad { i8*, i32 }
          cleanup
  %18 = extractvalue { i8*, i32 } %17, 0
  %19 = extractvalue { i8*, i32 } %17, 1
  %20 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %0, i32 0, i32 0
  store i8* %18, i8** %20, align 8
  %21 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %0, i32 0, i32 1
  store i32 %19, i32* %21, align 8
  br label %bb3
}

; Function Attrs: nonlazybind uwtable
define internal i32* @"_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$3ptr17h0db19e861b2d3b30E"({ i32*, i64 }* noalias readonly align 8 dereferenceable(16) %self) unnamed_addr #0 !dbg !948 {
start:
  %self.dbg.spill = alloca { i32*, i64 }*, align 8
  store { i32*, i64 }* %self, { i32*, i64 }** %self.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata { i32*, i64 }** %self.dbg.spill, metadata !952, metadata !DIExpression()), !dbg !953
  %0 = bitcast { i32*, i64 }* %self to i32**, !dbg !954
  %_2 = load i32*, i32** %0, align 8, !dbg !954, !nonnull !4
  %1 = call i32* @"_ZN4core3ptr6unique15Unique$LT$T$GT$6as_ptr17h504bde568a512624E"(i32* nonnull %_2), !dbg !954
  br label %bb1, !dbg !954

bb1:                                              ; preds = %start
  ret i32* %1, !dbg !955
}

; Function Attrs: nonlazybind uwtable
define internal zeroext i1 @"_ZN61_$LT$alloc..vec..Vec$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hffd7ab4e6e5ba82dE"(%"alloc::vec::Vec<i32>"* noalias readonly align 8 dereferenceable(24) %self, %"core::fmt::Formatter"* align 8 dereferenceable(64) %f) unnamed_addr #0 !dbg !956 {
start:
  %f.dbg.spill = alloca %"core::fmt::Formatter"*, align 8
  %self.dbg.spill = alloca %"alloc::vec::Vec<i32>"*, align 8
  store %"alloc::vec::Vec<i32>"* %self, %"alloc::vec::Vec<i32>"** %self.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata %"alloc::vec::Vec<i32>"** %self.dbg.spill, metadata !959, metadata !DIExpression()), !dbg !961
  store %"core::fmt::Formatter"* %f, %"core::fmt::Formatter"** %f.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata %"core::fmt::Formatter"** %f.dbg.spill, metadata !960, metadata !DIExpression()), !dbg !962
  %0 = call { [0 x i32]*, i64 } @"_ZN68_$LT$alloc..vec..Vec$LT$T$GT$$u20$as$u20$core..ops..deref..Deref$GT$5deref17h36511f1a6cab852fE"(%"alloc::vec::Vec<i32>"* noalias readonly align 8 dereferenceable(24) %self), !dbg !963
  %_5.0 = extractvalue { [0 x i32]*, i64 } %0, 0, !dbg !963
  %_5.1 = extractvalue { [0 x i32]*, i64 } %0, 1, !dbg !963
  br label %bb1, !dbg !963

bb1:                                              ; preds = %start
  %1 = call zeroext i1 @"_ZN48_$LT$$u5b$T$u5d$$u20$as$u20$core..fmt..Debug$GT$3fmt17h39bc7f0a6d42a2c4E"([0 x i32]* noalias nonnull readonly align 4 %_5.0, i64 %_5.1, %"core::fmt::Formatter"* align 8 dereferenceable(64) %f), !dbg !964
  br label %bb2, !dbg !964

bb2:                                              ; preds = %bb1
  ret i1 %1, !dbg !965
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal { i8*, i64 } @"_ZN62_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..AllocRef$GT$5alloc17h545ef1d2b7748796E"(%"alloc::alloc::Global"* nonnull align 1 %self, i64 %0, i64 %1, i1 zeroext %2) unnamed_addr #1 !dbg !966 {
start:
  %ptr.dbg.spill = alloca i8*, align 8
  %val.dbg.spill = alloca i8*, align 8
  %size.dbg.spill = alloca i64, align 8
  %err.dbg.spill = alloca %"core::alloc::AllocErr", align 1
  %self.dbg.spill = alloca %"alloc::alloc::Global"*, align 8
  %_26 = alloca { i8*, i64 }, align 8
  %_16 = alloca i8*, align 8
  %raw_ptr = alloca i8*, align 8
  %_8 = alloca { i8*, i64 }, align 8
  %3 = alloca { i8*, i64 }, align 8
  %init = alloca i8, align 1
  %layout = alloca { i64, i64 }, align 8
  %4 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %layout, i32 0, i32 0
  store i64 %0, i64* %4, align 8
  %5 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %layout, i32 0, i32 1
  store i64 %1, i64* %5, align 8
  %6 = zext i1 %2 to i8
  store i8 %6, i8* %init, align 1
  store %"alloc::alloc::Global"* %self, %"alloc::alloc::Global"** %self.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata %"alloc::alloc::Global"** %self.dbg.spill, metadata !989, metadata !DIExpression()), !dbg !1002
  call void @llvm.dbg.declare(metadata { i64, i64 }* %layout, metadata !990, metadata !DIExpression()), !dbg !1003
  call void @llvm.dbg.declare(metadata i8* %init, metadata !991, metadata !DIExpression()), !dbg !1004
  call void @llvm.dbg.declare(metadata i8** %raw_ptr, metadata !994, metadata !DIExpression()), !dbg !1005
  call void @llvm.dbg.declare(metadata %"core::alloc::AllocErr"* %err.dbg.spill, metadata !998, metadata !DIExpression()), !dbg !1006
  %size = call i64 @_ZN4core5alloc6layout6Layout4size17hef4968c7788a7963E({ i64, i64 }* noalias readonly align 8 dereferenceable(16) %layout), !dbg !1007
  store i64 %size, i64* %size.dbg.spill, align 8, !dbg !1007
  call void @llvm.dbg.declare(metadata i64* %size.dbg.spill, metadata !992, metadata !DIExpression()), !dbg !1008
  br label %bb1, !dbg !1007

bb1:                                              ; preds = %start
  %_6 = icmp eq i64 %size, 0, !dbg !1009
  br i1 %_6, label %bb3, label %bb2, !dbg !1010

bb2:                                              ; preds = %bb1
  %7 = load i8, i8* %init, align 1, !dbg !1011, !range !262
  %8 = trunc i8 %7 to i1, !dbg !1011
  %_12 = zext i1 %8 to i64, !dbg !1011
  switch i64 %_12, label %bb6 [
    i64 0, label %bb7
    i64 1, label %bb5
  ], !dbg !1011

bb3:                                              ; preds = %bb1
  %_9 = call nonnull i8* @_ZN4core5alloc6layout6Layout8dangling17hcdb81f93d89b8781E({ i64, i64 }* noalias readonly align 8 dereferenceable(16) %layout), !dbg !1012
  br label %bb4, !dbg !1012

bb4:                                              ; preds = %bb3
  %9 = bitcast { i8*, i64 }* %_8 to i8**, !dbg !1013
  store i8* %_9, i8** %9, align 8, !dbg !1013
  %10 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %_8, i32 0, i32 1, !dbg !1013
  store i64 0, i64* %10, align 8, !dbg !1013
  %11 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %_8, i32 0, i32 0, !dbg !1014
  %12 = load i8*, i8** %11, align 8, !dbg !1014, !nonnull !4
  %13 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %_8, i32 0, i32 1, !dbg !1014
  %14 = load i64, i64* %13, align 8, !dbg !1014
  %15 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %3, i32 0, i32 0, !dbg !1014
  store i8* %12, i8** %15, align 8, !dbg !1014
  %16 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %3, i32 0, i32 1, !dbg !1014
  store i64 %14, i64* %16, align 8, !dbg !1014
  br label %bb20, !dbg !1010

bb5:                                              ; preds = %bb2
  %17 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %layout, i32 0, i32 0, !dbg !1015
  %_14.0 = load i64, i64* %17, align 8, !dbg !1015
  %18 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %layout, i32 0, i32 1, !dbg !1015
  %_14.1 = load i64, i64* %18, align 8, !dbg !1015, !range !349
  %19 = call i8* @_ZN5alloc5alloc12alloc_zeroed17hd16472e9ffeccab0E(i64 %_14.0, i64 %_14.1), !dbg !1016
  store i8* %19, i8** %raw_ptr, align 8, !dbg !1016
  br label %bb9, !dbg !1016

bb6:                                              ; preds = %bb2
  unreachable, !dbg !1017

bb7:                                              ; preds = %bb2
  %20 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %layout, i32 0, i32 0, !dbg !1018
  %_13.0 = load i64, i64* %20, align 8, !dbg !1018
  %21 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %layout, i32 0, i32 1, !dbg !1018
  %_13.1 = load i64, i64* %21, align 8, !dbg !1018, !range !349
  %22 = call i8* @_ZN5alloc5alloc5alloc17h2e7b42a5e27b448bE(i64 %_13.0, i64 %_13.1), !dbg !1019
  store i8* %22, i8** %raw_ptr, align 8, !dbg !1019
  br label %bb8, !dbg !1019

bb8:                                              ; preds = %bb7
  br label %bb10, !dbg !1020

bb9:                                              ; preds = %bb5
  br label %bb10, !dbg !1020

bb10:                                             ; preds = %bb9, %bb8
  %_19 = load i8*, i8** %raw_ptr, align 8, !dbg !1021
  %_18 = call i8* @"_ZN4core3ptr8non_null16NonNull$LT$T$GT$3new17h792254e09955eb57E"(i8* %_19), !dbg !1022
  br label %bb11, !dbg !1022

bb11:                                             ; preds = %bb10
  %_17 = call i8* @"_ZN4core6option15Option$LT$T$GT$5ok_or17h999f61165d24a571E"(i8* %_18), !dbg !1022
  br label %bb12, !dbg !1022

bb12:                                             ; preds = %bb11
  %23 = call i8* @"_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$11into_result17hc38e031618549405E"(i8* %_17), !dbg !1022
  store i8* %23, i8** %_16, align 8, !dbg !1022
  br label %bb13, !dbg !1022

bb13:                                             ; preds = %bb12
  %24 = bitcast i8** %_16 to {}**, !dbg !1023
  %25 = load {}*, {}** %24, align 8, !dbg !1023
  %26 = icmp ule {}* %25, null, !dbg !1023
  %_21 = select i1 %26, i64 1, i64 0, !dbg !1023
  switch i64 %_21, label %bb15 [
    i64 0, label %bb14
    i64 1, label %bb16
  ], !dbg !1023

bb14:                                             ; preds = %bb13
  %val = load i8*, i8** %_16, align 8, !dbg !1022, !nonnull !4
  store i8* %val, i8** %val.dbg.spill, align 8, !dbg !1022
  call void @llvm.dbg.declare(metadata i8** %val.dbg.spill, metadata !1000, metadata !DIExpression()), !dbg !1024
  store i8* %val, i8** %ptr.dbg.spill, align 8, !dbg !1024
  call void @llvm.dbg.declare(metadata i8** %ptr.dbg.spill, metadata !996, metadata !DIExpression()), !dbg !1025
  %27 = bitcast { i8*, i64 }* %_26 to i8**, !dbg !1026
  store i8* %val, i8** %27, align 8, !dbg !1026
  %28 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %_26, i32 0, i32 1, !dbg !1026
  store i64 %size, i64* %28, align 8, !dbg !1026
  %29 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %_26, i32 0, i32 0, !dbg !1027
  %30 = load i8*, i8** %29, align 8, !dbg !1027, !nonnull !4
  %31 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %_26, i32 0, i32 1, !dbg !1027
  %32 = load i64, i64* %31, align 8, !dbg !1027
  %33 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %3, i32 0, i32 0, !dbg !1027
  store i8* %30, i8** %33, align 8, !dbg !1027
  %34 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %3, i32 0, i32 1, !dbg !1027
  store i64 %32, i64* %34, align 8, !dbg !1027
  br label %bb20, !dbg !1010

bb15:                                             ; preds = %bb13
  unreachable, !dbg !1022

bb16:                                             ; preds = %bb13
  call void @"_ZN50_$LT$T$u20$as$u20$core..convert..From$LT$T$GT$$GT$4from17h7092642b3480d3e7E"(), !dbg !1006
  br label %bb18, !dbg !1006

bb17:                                             ; preds = %bb20, %bb19
  %35 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %3, i32 0, i32 0, !dbg !1028
  %36 = load i8*, i8** %35, align 8, !dbg !1028
  %37 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %3, i32 0, i32 1, !dbg !1028
  %38 = load i64, i64* %37, align 8, !dbg !1028
  %39 = insertvalue { i8*, i64 } undef, i8* %36, 0, !dbg !1028
  %40 = insertvalue { i8*, i64 } %39, i64 %38, 1, !dbg !1028
  ret { i8*, i64 } %40, !dbg !1028

bb18:                                             ; preds = %bb16
  %41 = call { i8*, i64 } @"_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17h702edbf1f0ba73baE"(), !dbg !1006
  store { i8*, i64 } %41, { i8*, i64 }* %3, align 8, !dbg !1006
  br label %bb19, !dbg !1006

bb19:                                             ; preds = %bb18
  br label %bb17, !dbg !1029

bb20:                                             ; preds = %bb14, %bb4
  br label %bb17, !dbg !1028
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal void @"_ZN62_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..AllocRef$GT$7dealloc17h3825975e1eb1fd39E"(%"alloc::alloc::Global"* nonnull align 1 %self, i8* nonnull %ptr, i64 %0, i64 %1) unnamed_addr #1 !dbg !1030 {
start:
  %ptr.dbg.spill = alloca i8*, align 8
  %self.dbg.spill = alloca %"alloc::alloc::Global"*, align 8
  %2 = alloca {}, align 1
  %layout = alloca { i64, i64 }, align 8
  %3 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %layout, i32 0, i32 0
  store i64 %0, i64* %3, align 8
  %4 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %layout, i32 0, i32 1
  store i64 %1, i64* %4, align 8
  store %"alloc::alloc::Global"* %self, %"alloc::alloc::Global"** %self.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata %"alloc::alloc::Global"** %self.dbg.spill, metadata !1034, metadata !DIExpression()), !dbg !1037
  store i8* %ptr, i8** %ptr.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata i8** %ptr.dbg.spill, metadata !1035, metadata !DIExpression()), !dbg !1038
  call void @llvm.dbg.declare(metadata { i64, i64 }* %layout, metadata !1036, metadata !DIExpression()), !dbg !1039
  %_5 = call i64 @_ZN4core5alloc6layout6Layout4size17hef4968c7788a7963E({ i64, i64 }* noalias readonly align 8 dereferenceable(16) %layout), !dbg !1040
  br label %bb1, !dbg !1040

bb1:                                              ; preds = %start
  %_4 = icmp ne i64 %_5, 0, !dbg !1040
  br i1 %_4, label %bb3, label %bb2, !dbg !1041

bb2:                                              ; preds = %bb1
  br label %bb6, !dbg !1041

bb3:                                              ; preds = %bb1
  %_7 = call i8* @"_ZN4core3ptr8non_null16NonNull$LT$T$GT$6as_ptr17h88b5fbb7bea35fd2E"(i8* nonnull %ptr), !dbg !1042
  br label %bb4, !dbg !1042

bb4:                                              ; preds = %bb3
  %5 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %layout, i32 0, i32 0, !dbg !1043
  %_9.0 = load i64, i64* %5, align 8, !dbg !1043
  %6 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %layout, i32 0, i32 1, !dbg !1043
  %_9.1 = load i64, i64* %6, align 8, !dbg !1043, !range !349
  call void @_ZN5alloc5alloc7dealloc17hdbb4828ab2871b7dE(i8* %_7, i64 %_9.0, i64 %_9.1), !dbg !1044
  br label %bb5, !dbg !1044

bb5:                                              ; preds = %bb4
  br label %bb6, !dbg !1041

bb6:                                              ; preds = %bb5, %bb2
  ret void, !dbg !1045
}

; Function Attrs: nonlazybind uwtable
define internal { i32*, i32* } @"_ZN63_$LT$I$u20$as$u20$core..iter..traits..collect..IntoIterator$GT$9into_iter17hbb686c5e7d86cbdeE"(i32* nonnull %self.0, i32* %self.1) unnamed_addr #0 !dbg !1046 {
start:
  %self.dbg.spill = alloca { i32*, i32* }, align 8
  %0 = getelementptr inbounds { i32*, i32* }, { i32*, i32* }* %self.dbg.spill, i32 0, i32 0
  store i32* %self.0, i32** %0, align 8
  %1 = getelementptr inbounds { i32*, i32* }, { i32*, i32* }* %self.dbg.spill, i32 0, i32 1
  store i32* %self.1, i32** %1, align 8
  call void @llvm.dbg.declare(metadata { i32*, i32* }* %self.dbg.spill, metadata !1055, metadata !DIExpression()), !dbg !1057
  %2 = insertvalue { i32*, i32* } undef, i32* %self.0, 0, !dbg !1058
  %3 = insertvalue { i32*, i32* } %2, i32* %self.1, 1, !dbg !1058
  ret { i32*, i32* } %3, !dbg !1058
}

; Function Attrs: nonlazybind uwtable
define internal void @"_ZN66_$LT$alloc..vec..Vec$LT$T$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h85f87b8320454e7eE"(%"alloc::vec::Vec<i32>"* align 8 dereferenceable(24) %self) unnamed_addr #0 !dbg !1059 {
start:
  %self.dbg.spill = alloca %"alloc::vec::Vec<i32>"*, align 8
  store %"alloc::vec::Vec<i32>"* %self, %"alloc::vec::Vec<i32>"** %self.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata %"alloc::vec::Vec<i32>"** %self.dbg.spill, metadata !1063, metadata !DIExpression()), !dbg !1064
  %_3 = call i32* @"_ZN5alloc3vec12Vec$LT$T$GT$10as_mut_ptr17hf71855b8cc411b38E"(%"alloc::vec::Vec<i32>"* align 8 dereferenceable(24) %self), !dbg !1065
  br label %bb1, !dbg !1065

bb1:                                              ; preds = %start
  %0 = getelementptr inbounds %"alloc::vec::Vec<i32>", %"alloc::vec::Vec<i32>"* %self, i32 0, i32 3, !dbg !1066
  %_5 = load i64, i64* %0, align 8, !dbg !1066
  %1 = call { [0 x i32]*, i64 } @_ZN4core3ptr24slice_from_raw_parts_mut17h8773b5974a4856c9E(i32* %_3, i64 %_5), !dbg !1067
  %_2.0 = extractvalue { [0 x i32]*, i64 } %1, 0, !dbg !1067
  %_2.1 = extractvalue { [0 x i32]*, i64 } %1, 1, !dbg !1067
  br label %bb2, !dbg !1067

bb2:                                              ; preds = %bb1
  br label %bb3, !dbg !1068

bb3:                                              ; preds = %bb2
  ret void, !dbg !1069
}

; Function Attrs: nonlazybind uwtable
define internal { [0 x i32]*, i64 } @"_ZN68_$LT$alloc..vec..Vec$LT$T$GT$$u20$as$u20$core..ops..deref..Deref$GT$5deref17h36511f1a6cab852fE"(%"alloc::vec::Vec<i32>"* noalias readonly align 8 dereferenceable(24) %self) unnamed_addr #0 !dbg !1070 {
start:
  %self.dbg.spill = alloca %"alloc::vec::Vec<i32>"*, align 8
  store %"alloc::vec::Vec<i32>"* %self, %"alloc::vec::Vec<i32>"** %self.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata %"alloc::vec::Vec<i32>"** %self.dbg.spill, metadata !1074, metadata !DIExpression()), !dbg !1075
  %_2 = call i32* @"_ZN5alloc3vec12Vec$LT$T$GT$6as_ptr17h8b923cff056d4624E"(%"alloc::vec::Vec<i32>"* noalias readonly align 8 dereferenceable(24) %self), !dbg !1076
  br label %bb1, !dbg !1076

bb1:                                              ; preds = %start
  %0 = getelementptr inbounds %"alloc::vec::Vec<i32>", %"alloc::vec::Vec<i32>"* %self, i32 0, i32 3, !dbg !1077
  %_4 = load i64, i64* %0, align 8, !dbg !1077
  %1 = call { [0 x i32]*, i64 } @_ZN4core5slice14from_raw_parts17h1aa1aebb514c1027E(i32* %_2, i64 %_4), !dbg !1078
  %2 = extractvalue { [0 x i32]*, i64 } %1, 0, !dbg !1078
  %3 = extractvalue { [0 x i32]*, i64 } %1, 1, !dbg !1078
  br label %bb2, !dbg !1078

bb2:                                              ; preds = %bb1
  %4 = insertvalue { [0 x i32]*, i64 } undef, [0 x i32]* %2, 0, !dbg !1079
  %5 = insertvalue { [0 x i32]*, i64 } %4, i64 %3, 1, !dbg !1079
  ret { [0 x i32]*, i64 } %5, !dbg !1079
}

; Function Attrs: inlinehint nonlazybind uwtable
define internal i32 @"_ZN68_$LT$std..process..ExitCode$u20$as$u20$std..process..Termination$GT$6report17h870f4d10f7079208E"(i8 %0) unnamed_addr #1 !dbg !1080 {
start:
  %self = alloca i8, align 1
  store i8 %0, i8* %self, align 1
  call void @llvm.dbg.declare(metadata i8* %self, metadata !1087, metadata !DIExpression()), !dbg !1088
  %1 = call i32 @_ZN3std3sys4unix7process14process_common8ExitCode6as_i3217hc2578c04f095b037E(i8* noalias readonly align 1 dereferenceable(1) %self), !dbg !1089
  br label %bb1, !dbg !1089

bb1:                                              ; preds = %start
  ret i32 %1, !dbg !1090
}

; Function Attrs: nonlazybind uwtable
define internal void @"_ZN77_$LT$alloc..raw_vec..RawVec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h667701eba3543d10E"({ i32*, i64 }* align 8 dereferenceable(16) %self) unnamed_addr #0 !dbg !1091 {
start:
  %layout.dbg.spill = alloca { i64, i64 }, align 8
  %ptr.dbg.spill = alloca i8*, align 8
  %self.dbg.spill = alloca { i32*, i64 }*, align 8
  %_2 = alloca %"core::option::Option<(core::ptr::non_null::NonNull<u8>, core::alloc::layout::Layout)>", align 8
  %0 = alloca {}, align 1
  store { i32*, i64 }* %self, { i32*, i64 }** %self.dbg.spill, align 8
  call void @llvm.dbg.declare(metadata { i32*, i64 }** %self.dbg.spill, metadata !1097, metadata !DIExpression()), !dbg !1101
  call void @"_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$14current_memory17h29a0e371622c4c5bE"(%"core::option::Option<(core::ptr::non_null::NonNull<u8>, core::alloc::layout::Layout)>"* noalias nocapture sret dereferenceable(24) %_2, { i32*, i64 }* noalias readonly align 8 dereferenceable(16) %self), !dbg !1102
  br label %bb1, !dbg !1102

bb1:                                              ; preds = %start
  %1 = bitcast %"core::option::Option<(core::ptr::non_null::NonNull<u8>, core::alloc::layout::Layout)>"* %_2 to {}**, !dbg !1103
  %2 = load {}*, {}** %1, align 8, !dbg !1103
  %3 = icmp ule {}* %2, null, !dbg !1103
  %_4 = select i1 %3, i64 0, i64 1, !dbg !1103
  %4 = icmp eq i64 %_4, 1, !dbg !1103
  br i1 %4, label %bb3, label %bb2, !dbg !1103

bb2:                                              ; preds = %bb1
  br label %bb5, !dbg !1104

bb3:                                              ; preds = %bb1
  %5 = bitcast %"core::option::Option<(core::ptr::non_null::NonNull<u8>, core::alloc::layout::Layout)>"* %_2 to %"core::option::Option<(core::ptr::non_null::NonNull<u8>, core::alloc::layout::Layout)>::Some"*, !dbg !1105
  %6 = bitcast %"core::option::Option<(core::ptr::non_null::NonNull<u8>, core::alloc::layout::Layout)>::Some"* %5 to { [0 x i64], i8*, [0 x i64], { i64, i64 }, [0 x i64] }*, !dbg !1105
  %7 = bitcast { [0 x i64], i8*, [0 x i64], { i64, i64 }, [0 x i64] }* %6 to i8**, !dbg !1105
  %ptr = load i8*, i8** %7, align 8, !dbg !1105, !nonnull !4
  store i8* %ptr, i8** %ptr.dbg.spill, align 8, !dbg !1105
  call void @llvm.dbg.declare(metadata i8** %ptr.dbg.spill, metadata !1098, metadata !DIExpression()), !dbg !1106
  %8 = bitcast %"core::option::Option<(core::ptr::non_null::NonNull<u8>, core::alloc::layout::Layout)>"* %_2 to %"core::option::Option<(core::ptr::non_null::NonNull<u8>, core::alloc::layout::Layout)>::Some"*, !dbg !1107
  %9 = bitcast %"core::option::Option<(core::ptr::non_null::NonNull<u8>, core::alloc::layout::Layout)>::Some"* %8 to { [0 x i64], i8*, [0 x i64], { i64, i64 }, [0 x i64] }*, !dbg !1107
  %10 = getelementptr inbounds { [0 x i64], i8*, [0 x i64], { i64, i64 }, [0 x i64] }, { [0 x i64], i8*, [0 x i64], { i64, i64 }, [0 x i64] }* %9, i32 0, i32 3, !dbg !1107
  %11 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %10, i32 0, i32 0, !dbg !1107
  %layout.0 = load i64, i64* %11, align 8, !dbg !1107
  %12 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %10, i32 0, i32 1, !dbg !1107
  %layout.1 = load i64, i64* %12, align 8, !dbg !1107, !range !349
  %13 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %layout.dbg.spill, i32 0, i32 0, !dbg !1107
  store i64 %layout.0, i64* %13, align 8, !dbg !1107
  %14 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %layout.dbg.spill, i32 0, i32 1, !dbg !1107
  store i64 %layout.1, i64* %14, align 8, !dbg !1107
  call void @llvm.dbg.declare(metadata { i64, i64 }* %layout.dbg.spill, metadata !1100, metadata !DIExpression()), !dbg !1108
  %_7 = bitcast { i32*, i64 }* %self to %"alloc::alloc::Global"*, !dbg !1109
  call void @"_ZN62_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..AllocRef$GT$7dealloc17h3825975e1eb1fd39E"(%"alloc::alloc::Global"* nonnull align 1 %_7, i8* nonnull %ptr, i64 %layout.0, i64 %layout.1), !dbg !1109
  br label %bb4, !dbg !1109

bb4:                                              ; preds = %bb3
  br label %bb5, !dbg !1104

bb5:                                              ; preds = %bb4, %bb2
  ret void, !dbg !1110
}

; Function Attrs: nonlazybind uwtable
define internal void @_ZN2t34heap17he50e910211807e5cE() unnamed_addr #0 personality i32 (i32, i32, i64, %"unwind::libunwind::_Unwind_Exception"*, %"unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality !dbg !1111 {
start:
  %0 = alloca { i8*, i32 }, align 8
  %arg0.dbg.spill = alloca %"alloc::vec::Vec<i32>"*, align 8
  %_14 = alloca i64*, align 8
  %_13 = alloca [1 x { i8*, i8* }], align 8
  %_6 = alloca %"core::fmt::Arguments", align 8
  %v = alloca %"alloc::vec::Vec<i32>", align 8
  call void @llvm.dbg.declare(metadata %"alloc::vec::Vec<i32>"* %v, metadata !1115, metadata !DIExpression()), !dbg !1121
  %1 = call i8* @_ZN5alloc5alloc15exchange_malloc17h264145ac6d203f21E(i64 12, i64 4), !dbg !1122
  %_4 = bitcast i8* %1 to [3 x i32]*, !dbg !1122
  %2 = bitcast [3 x i32]* %_4 to i32*, !dbg !1122
  store i32 1, i32* %2, align 4, !dbg !1122
  %3 = getelementptr inbounds [3 x i32], [3 x i32]* %_4, i32 0, i32 1, !dbg !1122
  store i32 2, i32* %3, align 4, !dbg !1122
  %4 = getelementptr inbounds [3 x i32], [3 x i32]* %_4, i32 0, i32 2, !dbg !1122
  store i32 3, i32* %4, align 4, !dbg !1122
  %5 = bitcast [3 x i32]* %_4 to [0 x i32]*, !dbg !1122
  %6 = bitcast [0 x i32]* %5 to i32*, !dbg !1122
  %_2.0 = bitcast i32* %6 to [0 x i32]*, !dbg !1122
  call void @"_ZN5alloc5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$8into_vec17h8f0ff62baaf1865fE"(%"alloc::vec::Vec<i32>"* noalias nocapture sret dereferenceable(24) %v, [0 x i32]* noalias nonnull align 4 %_2.0, i64 3), !dbg !1122
  br label %bb2, !dbg !1122

bb1:                                              ; preds = %bb4
  %7 = bitcast { i8*, i32 }* %0 to i8**, !dbg !1123
  %8 = load i8*, i8** %7, align 8, !dbg !1123
  %9 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %0, i32 0, i32 1, !dbg !1123
  %10 = load i32, i32* %9, align 8, !dbg !1123
  %11 = insertvalue { i8*, i32 } undef, i8* %8, 0, !dbg !1123
  %12 = insertvalue { i8*, i32 } %11, i32 %10, 1, !dbg !1123
  resume { i8*, i32 } %12, !dbg !1123

bb2:                                              ; preds = %start
  %_20 = load [2 x { [0 x i8]*, i64 }]*, [2 x { [0 x i8]*, i64 }]** bitcast (<{ i8*, [0 x i8] }>* @anon.510a20d41a8d11441005547d3619066c.0 to [2 x { [0 x i8]*, i64 }]**), align 8, !dbg !1124, !nonnull !4
  %_7.0 = bitcast [2 x { [0 x i8]*, i64 }]* %_20 to [0 x { [0 x i8]*, i64 }]*, !dbg !1124
  %13 = bitcast i64** %_14 to %"alloc::vec::Vec<i32>"**, !dbg !1125
  store %"alloc::vec::Vec<i32>"* %v, %"alloc::vec::Vec<i32>"** %13, align 8, !dbg !1125
  %14 = bitcast i64** %_14 to %"alloc::vec::Vec<i32>"**, !dbg !1125
  %arg0 = load %"alloc::vec::Vec<i32>"*, %"alloc::vec::Vec<i32>"** %14, align 8, !dbg !1125, !nonnull !4
  store %"alloc::vec::Vec<i32>"* %arg0, %"alloc::vec::Vec<i32>"** %arg0.dbg.spill, align 8, !dbg !1125
  call void @llvm.dbg.declare(metadata %"alloc::vec::Vec<i32>"** %arg0.dbg.spill, metadata !1117, metadata !DIExpression()), !dbg !1126
  %15 = invoke { i8*, i8* } @_ZN4core3fmt10ArgumentV13new17h4ba1af7bed8ead9eE(%"alloc::vec::Vec<i32>"* noalias readonly align 8 dereferenceable(24) %arg0, i1 (%"alloc::vec::Vec<i32>"*, %"core::fmt::Formatter"*)* nonnull @"_ZN61_$LT$alloc..vec..Vec$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hffd7ab4e6e5ba82dE")
          to label %bb3 unwind label %cleanup, !dbg !1126

bb3:                                              ; preds = %bb2
  %_17.0 = extractvalue { i8*, i8* } %15, 0, !dbg !1126
  %_17.1 = extractvalue { i8*, i8* } %15, 1, !dbg !1126
  %16 = bitcast [1 x { i8*, i8* }]* %_13 to { i8*, i8* }*, !dbg !1126
  %17 = getelementptr inbounds { i8*, i8* }, { i8*, i8* }* %16, i32 0, i32 0, !dbg !1126
  store i8* %_17.0, i8** %17, align 8, !dbg !1126
  %18 = getelementptr inbounds { i8*, i8* }, { i8*, i8* }* %16, i32 0, i32 1, !dbg !1126
  store i8* %_17.1, i8** %18, align 8, !dbg !1126
  %_10.0 = bitcast [1 x { i8*, i8* }]* %_13 to [0 x { i8*, i8* }]*, !dbg !1125
  invoke void @_ZN4core3fmt9Arguments6new_v117h0eff704c401da8f4E(%"core::fmt::Arguments"* noalias nocapture sret dereferenceable(48) %_6, [0 x { [0 x i8]*, i64 }]* noalias nonnull readonly align 8 %_7.0, i64 2, [0 x { i8*, i8* }]* noalias nonnull readonly align 8 %_10.0, i64 1)
          to label %bb5 unwind label %cleanup, !dbg !1125

bb4:                                              ; preds = %cleanup
  call void @_ZN4core3ptr13drop_in_place17h3779003cde8a2e9cE(%"alloc::vec::Vec<i32>"* %v) #10, !dbg !1127
  br label %bb1, !dbg !1127

bb5:                                              ; preds = %bb3
  invoke void @_ZN3std2io5stdio6_print17h186982c4ac04813bE(%"core::fmt::Arguments"* noalias nocapture dereferenceable(48) %_6)
          to label %bb6 unwind label %cleanup, !dbg !1125

bb6:                                              ; preds = %bb5
  call void @_ZN4core3ptr13drop_in_place17h3779003cde8a2e9cE(%"alloc::vec::Vec<i32>"* %v), !dbg !1127
  br label %bb7, !dbg !1127

bb7:                                              ; preds = %bb6
  ret void, !dbg !1128

cleanup:                                          ; preds = %bb5, %bb3, %bb2
  %19 = landingpad { i8*, i32 }
          cleanup
  %20 = extractvalue { i8*, i32 } %19, 0
  %21 = extractvalue { i8*, i32 } %19, 1
  %22 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %0, i32 0, i32 0
  store i8* %20, i8** %22, align 8
  %23 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %0, i32 0, i32 1
  store i32 %21, i32* %23, align 8
  br label %bb4
}

; Function Attrs: nonlazybind uwtable
define internal void @_ZN2t34main17h770501928fb2de42E() unnamed_addr #0 !dbg !1129 {
start:
  call void @_ZN2t34heap17he50e910211807e5cE(), !dbg !1130
  br label %bb1, !dbg !1130

bb1:                                              ; preds = %start
  ret void, !dbg !1131
}

; Function Attrs: nounwind readnone speculatable willreturn
declare void @llvm.dbg.declare(metadata, metadata, metadata) #2

; Function Attrs: nonlazybind uwtable
declare i64 @_ZN3std2rt19lang_start_internal17h09e25702c8631a09E({}* nonnull align 1, [3 x i64]* noalias readonly align 8 dereferenceable(24), i64, i8**) unnamed_addr #0

; Function Attrs: nonlazybind uwtable
declare void @_ZN4core3fmt9Formatter10debug_list17h08201c2a736b664eE(%"core::fmt::builders::DebugList"* noalias nocapture sret dereferenceable(16), %"core::fmt::Formatter"* align 8 dereferenceable(64)) unnamed_addr #0

; Function Attrs: inlinehint nonlazybind uwtable
declare { i32*, i32* } @"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$4iter17h784389d7728d23b7E"([0 x i32]* noalias nonnull readonly align 4, i64) unnamed_addr #1

; Function Attrs: nonlazybind uwtable
declare zeroext i1 @_ZN4core3fmt8builders9DebugList6finish17h0bd8e1f91de79e72E(%"core::fmt::builders::DebugList"* align 8 dereferenceable(16)) unnamed_addr #0

; Function Attrs: nounwind nonlazybind uwtable
declare i32 @rust_eh_personality(i32, i32, i64, %"unwind::libunwind::_Unwind_Exception"*, %"unwind::libunwind::_Unwind_Context"*) unnamed_addr #3

; Function Attrs: inlinehint nonlazybind uwtable
declare align 4 dereferenceable_or_null(4) i32* @"_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99bcc143fdaa2301E"({ i32*, i32* }* align 8 dereferenceable(16)) unnamed_addr #1

; Function Attrs: nonlazybind uwtable
declare zeroext i1 @"_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h0fd8c52619dd8f0aE"(i32** noalias readonly align 8 dereferenceable(8), %"core::fmt::Formatter"* align 8 dereferenceable(64)) unnamed_addr #0

; Function Attrs: nonlazybind uwtable
declare align 8 dereferenceable(16) %"core::fmt::builders::DebugList"* @_ZN4core3fmt8builders9DebugList5entry17h49d852d7c1cf8431E(%"core::fmt::builders::DebugList"* align 8 dereferenceable(16), {}* nonnull align 1, [3 x i64]* noalias readonly align 8 dereferenceable(24)) unnamed_addr #0

; Function Attrs: nounwind readnone speculatable willreturn
declare { i64, i1 } @llvm.umul.with.overflow.i64(i64, i64) #2

; Function Attrs: inlinehint nonlazybind uwtable
declare nonnull i8* @"_ZN4core3ptr6unique15Unique$LT$T$GT$13new_unchecked17hc582b72fbbf1790dE"(i8*) unnamed_addr #1

; Function Attrs: inlinehint nonlazybind uwtable
declare nonnull i8* @"_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked17h95f6a7b155a1993bE"(i8*) unnamed_addr #1

; Function Attrs: nonlazybind uwtable
declare zeroext i1 @_ZN4core10intrinsics23is_aligned_and_not_null17h48fb339f2584f6f4E(i32*) unnamed_addr #0

; Function Attrs: cold noinline noreturn nonlazybind uwtable
declare void @_ZN4core9panicking5panic17h08cbe4e12d51a418E([0 x i8]* noalias nonnull readonly align 1, i64, %"core::panic::Location"* noalias readonly align 8 dereferenceable(24)) unnamed_addr #4

; Function Attrs: inlinehint nonlazybind uwtable
declare zeroext i1 @"_ZN4core3ptr7mut_ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$7is_null17hfb3183277fc6245eE"(i32*) unnamed_addr #1

; Function Attrs: nounwind willreturn
declare void @llvm.assume(i1) #5

; Function Attrs: nounwind nonlazybind uwtable
declare i8* @__rust_alloc_zeroed(i64, i64) unnamed_addr #3

; Function Attrs: noreturn nounwind nonlazybind uwtable
declare void @_ZN5alloc5alloc18handle_alloc_error17h1c4ca6cc77cf210bE(i64, i64) unnamed_addr #6

; Function Attrs: inlinehint nonlazybind uwtable
declare i8* @"_ZN4core3ptr8non_null16NonNull$LT$T$GT$6as_ptr17h88b5fbb7bea35fd2E"(i8* nonnull) unnamed_addr #1

; Function Attrs: nounwind nonlazybind uwtable
declare noalias i8* @__rust_alloc(i64, i64) unnamed_addr #3

; Function Attrs: nounwind nonlazybind uwtable
declare void @__rust_dealloc(i8*, i64, i64) unnamed_addr #3

; Function Attrs: nonlazybind uwtable
declare nonnull i8* @"_ZN50_$LT$T$u20$as$u20$core..convert..Into$LT$U$GT$$GT$4into17h0a0f20c1f95e1419E"(i8* nonnull) unnamed_addr #0

; Function Attrs: inlinehint nonlazybind uwtable
declare i64 @"_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17hf5557d2830fe6f05E"([0 x i32]* noalias nonnull readonly align 4, i64) unnamed_addr #1

; Function Attrs: nounwind readnone willreturn
declare i1 @llvm.expect.i1(i1, i1) #7

; Function Attrs: argmemonly nounwind willreturn
declare void @llvm.memcpy.p0i8.p0i8.i64(i8* noalias nocapture writeonly, i8* noalias nocapture readonly, i64, i1 immarg) #8

; Function Attrs: inlinehint nonlazybind uwtable
declare i8* @"_ZN4core3ptr8non_null16NonNull$LT$T$GT$3new17h792254e09955eb57E"(i8*) unnamed_addr #1

; Function Attrs: inlinehint nonlazybind uwtable
declare i8* @"_ZN4core6option15Option$LT$T$GT$5ok_or17h999f61165d24a571E"(i8*) unnamed_addr #1

; Function Attrs: inlinehint nonlazybind uwtable
declare i8* @"_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$11into_result17hc38e031618549405E"(i8*) unnamed_addr #1

; Function Attrs: nonlazybind uwtable
declare void @"_ZN50_$LT$T$u20$as$u20$core..convert..From$LT$T$GT$$GT$4from17h7092642b3480d3e7E"() unnamed_addr #0

; Function Attrs: inlinehint nonlazybind uwtable
declare { i8*, i64 } @"_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17h702edbf1f0ba73baE"() unnamed_addr #1

; Function Attrs: nonlazybind uwtable
declare void @_ZN3std2io5stdio6_print17h186982c4ac04813bE(%"core::fmt::Arguments"* noalias nocapture dereferenceable(48)) unnamed_addr #0

; Function Attrs: nonlazybind
define i32 @main(i32 %0, i8** %1) unnamed_addr #9 {
top:
  %2 = load volatile i8, i8* getelementptr inbounds ([34 x i8], [34 x i8]* @__rustc_debug_gdb_scripts_section__, i32 0, i32 0), align 1
  %3 = sext i32 %0 to i64
  %4 = call i64 @_ZN3std2rt10lang_start17h6d4a7dc0ad4c0476E(void ()* @_ZN2t34main17h770501928fb2de42E, i64 %3, i8** %1)
  %5 = trunc i64 %4 to i32
  ret i32 %5
}

attributes #0 = { nonlazybind uwtable "probe-stack"="__rust_probestack" "target-cpu"="x86-64" }
attributes #1 = { inlinehint nonlazybind uwtable "probe-stack"="__rust_probestack" "target-cpu"="x86-64" }
attributes #2 = { nounwind readnone speculatable willreturn }
attributes #3 = { nounwind nonlazybind uwtable "probe-stack"="__rust_probestack" "target-cpu"="x86-64" }
attributes #4 = { cold noinline noreturn nonlazybind uwtable "probe-stack"="__rust_probestack" "target-cpu"="x86-64" }
attributes #5 = { nounwind willreturn }
attributes #6 = { noreturn nounwind nonlazybind uwtable "probe-stack"="__rust_probestack" "target-cpu"="x86-64" }
attributes #7 = { nounwind readnone willreturn }
attributes #8 = { argmemonly nounwind willreturn }
attributes #9 = { nonlazybind "target-cpu"="x86-64" }
attributes #10 = { noinline }

!llvm.module.flags = !{!19, !20, !21, !22}
!llvm.dbg.cu = !{!23}

!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = distinct !DIGlobalVariable(name: "vtable", scope: null, file: !2, type: !3, isLocal: true, isDefinition: true)
!2 = !DIFile(filename: "<unknown>", directory: "")
!3 = !DICompositeType(tag: DW_TAG_structure_type, name: "vtable", file: !2, align: 64, flags: DIFlagArtificial, elements: !4, vtableHolder: !5, identifier: "vtable")
!4 = !{}
!5 = !DICompositeType(tag: DW_TAG_structure_type, name: "closure-0", scope: !6, file: !2, size: 64, align: 64, elements: !9, templateParams: !4, identifier: "84fc2bd3d1044a1f5bcda843415b28b")
!6 = !DINamespace(name: "lang_start", scope: !7)
!7 = !DINamespace(name: "rt", scope: !8)
!8 = !DINamespace(name: "std", scope: null)
!9 = !{!10}
!10 = !DIDerivedType(tag: DW_TAG_member, name: "__0", scope: !5, file: !2, baseType: !11, size: 64, align: 64)
!11 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "fn()", baseType: !12, size: 64, align: 64, dwarfAddressSpace: 0)
!12 = !DISubroutineType(types: !13)
!13 = !{null}
!14 = !DIGlobalVariableExpression(var: !15, expr: !DIExpression())
!15 = distinct !DIGlobalVariable(name: "vtable", scope: null, file: !2, type: !16, isLocal: true, isDefinition: true)
!16 = !DICompositeType(tag: DW_TAG_structure_type, name: "vtable", file: !2, align: 64, flags: DIFlagArtificial, elements: !4, vtableHolder: !17, identifier: "vtable")
!17 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&i32", baseType: !18, size: 64, align: 64, dwarfAddressSpace: 0)
!18 = !DIBasicType(name: "i32", size: 32, encoding: DW_ATE_signed)
!19 = !{i32 7, !"PIC Level", i32 2}
!20 = !{i32 7, !"PIE Level", i32 2}
!21 = !{i32 2, !"RtLibUseGOT", i32 1}
!22 = !{i32 2, !"Debug Info Version", i32 3}
!23 = distinct !DICompileUnit(language: DW_LANG_Rust, file: !24, producer: "clang LLVM (rustc version 1.46.0-nightly (feb3536eb 2020-06-09))", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !25, globals: !47)
!24 = !DIFile(filename: "src/t3.rs", directory: "/home/vagrant/proj/rust/rust_llvm/rust_code")
!25 = !{!26, !33, !42}
!26 = !DICompositeType(tag: DW_TAG_enumeration_type, name: "Result", scope: !27, file: !2, baseType: !29, size: 8, align: 8, flags: DIFlagEnumClass, elements: !30)
!27 = !DINamespace(name: "result", scope: !28)
!28 = !DINamespace(name: "core", scope: null)
!29 = !DIBasicType(name: "u8", size: 8, encoding: DW_ATE_unsigned)
!30 = !{!31, !32}
!31 = !DIEnumerator(name: "Ok", value: 0)
!32 = !DIEnumerator(name: "Err", value: 1)
!33 = !DICompositeType(tag: DW_TAG_enumeration_type, name: "Alignment", scope: !34, file: !2, baseType: !29, size: 8, align: 8, flags: DIFlagEnumClass, elements: !37)
!34 = !DINamespace(name: "v1", scope: !35)
!35 = !DINamespace(name: "rt", scope: !36)
!36 = !DINamespace(name: "fmt", scope: !28)
!37 = !{!38, !39, !40, !41}
!38 = !DIEnumerator(name: "Left", value: 0)
!39 = !DIEnumerator(name: "Right", value: 1)
!40 = !DIEnumerator(name: "Center", value: 2)
!41 = !DIEnumerator(name: "Unknown", value: 3)
!42 = !DICompositeType(tag: DW_TAG_enumeration_type, name: "AllocInit", scope: !43, file: !2, baseType: !29, size: 8, align: 8, flags: DIFlagEnumClass, elements: !44)
!43 = !DINamespace(name: "alloc", scope: !28)
!44 = !{!45, !46}
!45 = !DIEnumerator(name: "Uninitialized", value: 0)
!46 = !DIEnumerator(name: "Zeroed", value: 1)
!47 = !{!0, !14}
!48 = distinct !DISubprogram(name: "lang_start<()>", linkageName: "_ZN3std2rt10lang_start17h6d4a7dc0ad4c0476E", scope: !7, file: !49, line: 62, type: !50, scopeLine: 62, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !59, retainedNodes: !55)
!49 = !DIFile(filename: "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libstd/rt.rs", directory: "", checksumkind: CSK_MD5, checksum: "580128330782ec7d1bbdaeb3149adfa0")
!50 = !DISubroutineType(types: !51)
!51 = !{!52, !11, !52, !53}
!52 = !DIBasicType(name: "isize", size: 64, encoding: DW_ATE_signed)
!53 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "*const *const u8", baseType: !54, size: 64, align: 64, dwarfAddressSpace: 0)
!54 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "*const u8", baseType: !29, size: 64, align: 64, dwarfAddressSpace: 0)
!55 = !{!56, !57, !58}
!56 = !DILocalVariable(name: "main", arg: 1, scope: !48, file: !49, line: 63, type: !11)
!57 = !DILocalVariable(name: "argc", arg: 2, scope: !48, file: !49, line: 64, type: !52)
!58 = !DILocalVariable(name: "argv", arg: 3, scope: !48, file: !49, line: 65, type: !53)
!59 = !{!60}
!60 = !DITemplateTypeParameter(name: "T", type: !61)
!61 = !DIBasicType(name: "()", encoding: DW_ATE_unsigned)
!62 = !DILocation(line: 63, column: 5, scope: !48)
!63 = !DILocation(line: 64, column: 5, scope: !48)
!64 = !DILocation(line: 65, column: 5, scope: !48)
!65 = !DILocation(line: 67, column: 26, scope: !48)
!66 = !DILocation(line: 67, column: 25, scope: !48)
!67 = !DILocation(line: 67, column: 5, scope: !48)
!68 = !DILocation(line: 68, column: 2, scope: !48)
!69 = distinct !DISubprogram(name: "{{closure}}<()>", linkageName: "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h37f61e5b7249be66E", scope: !6, file: !49, line: 67, type: !70, scopeLine: 67, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !59, retainedNodes: !73)
!70 = !DISubroutineType(types: !71)
!71 = !{!18, !72}
!72 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&closure-0", baseType: !5, size: 64, align: 64, dwarfAddressSpace: 0)
!73 = !{!74}
!74 = !DILocalVariable(name: "main", scope: !69, file: !49, line: 63, type: !11, align: 8)
!75 = !DILocation(line: 63, column: 5, scope: !69)
!76 = !DILocation(line: 67, column: 34, scope: !69)
!77 = !DILocation(line: 67, column: 49, scope: !69)
!78 = distinct !DISubprogram(name: "as_i32", linkageName: "_ZN3std3sys4unix7process14process_common8ExitCode6as_i3217hc2578c04f095b037E", scope: !80, file: !79, line: 398, type: !87, scopeLine: 398, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !4, retainedNodes: !90)
!79 = !DIFile(filename: "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libstd/sys/unix/process/process_common.rs", directory: "", checksumkind: CSK_MD5, checksum: "620f5402e8ba314453e210d5cb93d802")
!80 = !DICompositeType(tag: DW_TAG_structure_type, name: "ExitCode", scope: !81, file: !2, size: 8, align: 8, elements: !85, templateParams: !4, identifier: "2ffa2eec8146c9cb3ad7c75a3b3ab9f3")
!81 = !DINamespace(name: "process_common", scope: !82)
!82 = !DINamespace(name: "process", scope: !83)
!83 = !DINamespace(name: "unix", scope: !84)
!84 = !DINamespace(name: "sys", scope: !8)
!85 = !{!86}
!86 = !DIDerivedType(tag: DW_TAG_member, name: "__0", scope: !80, file: !2, baseType: !29, size: 8, align: 8)
!87 = !DISubroutineType(types: !88)
!88 = !{!18, !89}
!89 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&std::sys::unix::process::process_common::ExitCode", baseType: !80, size: 64, align: 64, dwarfAddressSpace: 0)
!90 = !{!91}
!91 = !DILocalVariable(name: "self", arg: 1, scope: !78, file: !79, line: 398, type: !89)
!92 = !DILocation(line: 398, column: 19, scope: !78)
!93 = !DILocation(line: 399, column: 9, scope: !78)
!94 = !DILocation(line: 400, column: 6, scope: !78)
!95 = distinct !DISubprogram(name: "fmt<i32>", linkageName: "_ZN48_$LT$$u5b$T$u5d$$u20$as$u20$core..fmt..Debug$GT$3fmt17h39bc7f0a6d42a2c4E", scope: !97, file: !96, line: 2169, type: !98, scopeLine: 2169, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !144, retainedNodes: !141)
!96 = !DIFile(filename: "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libcore/fmt/mod.rs", directory: "", checksumkind: CSK_MD5, checksum: "d51e9a53dcfda96bc5d8d2f208c290b9")
!97 = !DINamespace(name: "{{impl}}", scope: !36)
!98 = !DISubroutineType(types: !99)
!99 = !{!26, !100, !106}
!100 = !DICompositeType(tag: DW_TAG_structure_type, name: "&[i32]", file: !2, size: 128, align: 64, elements: !101, templateParams: !4, identifier: "eb06f4cf6efdc2bd8df73753b82fb221")
!101 = !{!102, !104}
!102 = !DIDerivedType(tag: DW_TAG_member, name: "data_ptr", scope: !100, file: !2, baseType: !103, size: 64, align: 64)
!103 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "*const i32", baseType: !18, size: 64, align: 64, dwarfAddressSpace: 0)
!104 = !DIDerivedType(tag: DW_TAG_member, name: "length", scope: !100, file: !2, baseType: !105, size: 64, align: 64, offset: 64)
!105 = !DIBasicType(name: "usize", size: 64, encoding: DW_ATE_unsigned)
!106 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&mut core::fmt::Formatter", baseType: !107, size: 64, align: 64, dwarfAddressSpace: 0)
!107 = !DICompositeType(tag: DW_TAG_structure_type, name: "Formatter", scope: !36, file: !2, size: 512, align: 64, elements: !108, templateParams: !4, identifier: "1ee87825438c5cadbc49ec1b3cb39554")
!108 = !{!109, !111, !113, !114, !130, !131}
!109 = !DIDerivedType(tag: DW_TAG_member, name: "flags", scope: !107, file: !2, baseType: !110, size: 32, align: 32, offset: 384)
!110 = !DIBasicType(name: "u32", size: 32, encoding: DW_ATE_unsigned)
!111 = !DIDerivedType(tag: DW_TAG_member, name: "fill", scope: !107, file: !2, baseType: !112, size: 32, align: 32, offset: 416)
!112 = !DIBasicType(name: "char", size: 32, encoding: DW_ATE_unsigned_char)
!113 = !DIDerivedType(tag: DW_TAG_member, name: "align", scope: !107, file: !2, baseType: !33, size: 8, align: 8, offset: 448)
!114 = !DIDerivedType(tag: DW_TAG_member, name: "width", scope: !107, file: !2, baseType: !115, size: 128, align: 64)
!115 = !DICompositeType(tag: DW_TAG_structure_type, name: "Option<usize>", scope: !116, file: !2, size: 128, align: 64, elements: !117, identifier: "a79c29c6e3892fafb403d7eccdca0f48")
!116 = !DINamespace(name: "option", scope: !28)
!117 = !{!118}
!118 = !DICompositeType(tag: DW_TAG_variant_part, scope: !116, file: !2, size: 128, align: 64, elements: !119, templateParams: !122, identifier: "a79c29c6e3892fafb403d7eccdca0f48_variant_part", discriminator: !128)
!119 = !{!120, !124}
!120 = !DIDerivedType(tag: DW_TAG_member, name: "None", scope: !118, file: !2, baseType: !121, size: 128, align: 64, extraData: i64 0)
!121 = !DICompositeType(tag: DW_TAG_structure_type, name: "None", scope: !115, file: !2, size: 128, align: 64, elements: !4, templateParams: !122, identifier: "a79c29c6e3892fafb403d7eccdca0f48::None")
!122 = !{!123}
!123 = !DITemplateTypeParameter(name: "T", type: !105)
!124 = !DIDerivedType(tag: DW_TAG_member, name: "Some", scope: !118, file: !2, baseType: !125, size: 128, align: 64, extraData: i64 1)
!125 = !DICompositeType(tag: DW_TAG_structure_type, name: "Some", scope: !115, file: !2, size: 128, align: 64, elements: !126, templateParams: !122, identifier: "a79c29c6e3892fafb403d7eccdca0f48::Some")
!126 = !{!127}
!127 = !DIDerivedType(tag: DW_TAG_member, name: "__0", scope: !125, file: !2, baseType: !105, size: 64, align: 64, offset: 64)
!128 = !DIDerivedType(tag: DW_TAG_member, scope: !116, file: !2, baseType: !129, size: 64, align: 64, flags: DIFlagArtificial)
!129 = !DIBasicType(name: "u64", size: 64, encoding: DW_ATE_unsigned)
!130 = !DIDerivedType(tag: DW_TAG_member, name: "precision", scope: !107, file: !2, baseType: !115, size: 128, align: 64, offset: 128)
!131 = !DIDerivedType(tag: DW_TAG_member, name: "buf", scope: !107, file: !2, baseType: !132, size: 128, align: 64, offset: 256)
!132 = !DICompositeType(tag: DW_TAG_structure_type, name: "&mut Write", scope: !36, file: !2, size: 128, align: 64, elements: !133, templateParams: !4, identifier: "5bb71011919a4585910a14ace4fc49cd")
!133 = !{!134, !136}
!134 = !DIDerivedType(tag: DW_TAG_member, name: "pointer", scope: !132, file: !2, baseType: !135, size: 64, align: 64, flags: DIFlagArtificial)
!135 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "*mut u8", baseType: !29, size: 64, align: 64, dwarfAddressSpace: 0)
!136 = !DIDerivedType(tag: DW_TAG_member, name: "vtable", scope: !132, file: !2, baseType: !137, size: 64, align: 64, offset: 64, flags: DIFlagArtificial)
!137 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&[usize; 3]", baseType: !138, size: 64, align: 64, dwarfAddressSpace: 0)
!138 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 192, align: 64, elements: !139)
!139 = !{!140}
!140 = !DISubrange(count: 3)
!141 = !{!142, !143}
!142 = !DILocalVariable(name: "self", arg: 1, scope: !95, file: !96, line: 2169, type: !100)
!143 = !DILocalVariable(name: "f", arg: 2, scope: !95, file: !96, line: 2169, type: !106)
!144 = !{!145}
!145 = !DITemplateTypeParameter(name: "T", type: !18)
!146 = !DILocation(line: 2169, column: 12, scope: !95)
!147 = !DILocation(line: 2169, column: 19, scope: !95)
!148 = !DILocation(line: 2170, column: 9, scope: !95)
!149 = !DILocation(line: 2170, column: 32, scope: !95)
!150 = !DILocation(line: 2171, column: 6, scope: !95)
!151 = distinct !DISubprogram(name: "new<alloc::vec::Vec<i32>>", linkageName: "_ZN4core3fmt10ArgumentV13new17h4ba1af7bed8ead9eE", scope: !152, file: !96, line: 281, type: !161, scopeLine: 281, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !194, retainedNodes: !191)
!152 = !DICompositeType(tag: DW_TAG_structure_type, name: "ArgumentV1", scope: !36, file: !2, size: 128, align: 64, elements: !153, templateParams: !4, identifier: "17b74e2cefcbb6486d6df5087498e773")
!153 = !{!154, !157}
!154 = !DIDerivedType(tag: DW_TAG_member, name: "value", scope: !152, file: !2, baseType: !155, size: 64, align: 64)
!155 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&core::fmt::::Opaque", baseType: !156, size: 64, align: 64, dwarfAddressSpace: 0)
!156 = !DICompositeType(tag: DW_TAG_structure_type, name: "Opaque", file: !2, align: 8, elements: !4, identifier: "4176a4e8411c29967e77dc88b2bb52a1")
!157 = !DIDerivedType(tag: DW_TAG_member, name: "formatter", scope: !152, file: !2, baseType: !158, size: 64, align: 64, offset: 64)
!158 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "fn(&core::fmt::::Opaque, &mut core::fmt::Formatter) -> core::result::Result<(), core::fmt::Error>", baseType: !159, size: 64, align: 64, dwarfAddressSpace: 0)
!159 = !DISubroutineType(types: !160)
!160 = !{!26, !155, !106}
!161 = !DISubroutineType(types: !162)
!162 = !{!152, !163, !188}
!163 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&alloc::vec::Vec<i32>", baseType: !164, size: 64, align: 64, dwarfAddressSpace: 0)
!164 = !DICompositeType(tag: DW_TAG_structure_type, name: "Vec<i32>", scope: !165, file: !2, size: 192, align: 64, elements: !167, templateParams: !144, identifier: "7c5e248bcc7e219684b61c2d1b1602a1")
!165 = !DINamespace(name: "vec", scope: !166)
!166 = !DINamespace(name: "alloc", scope: null)
!167 = !{!168, !187}
!168 = !DIDerivedType(tag: DW_TAG_member, name: "buf", scope: !164, file: !2, baseType: !169, size: 128, align: 64)
!169 = !DICompositeType(tag: DW_TAG_structure_type, name: "RawVec<i32, alloc::alloc::Global>", scope: !170, file: !2, size: 128, align: 64, elements: !171, templateParams: !185, identifier: "5820786f3356bc01e0dc2dc7eaa44141")
!170 = !DINamespace(name: "raw_vec", scope: !166)
!171 = !{!172, !181, !182}
!172 = !DIDerivedType(tag: DW_TAG_member, name: "ptr", scope: !169, file: !2, baseType: !173, size: 64, align: 64)
!173 = !DICompositeType(tag: DW_TAG_structure_type, name: "Unique<i32>", scope: !174, file: !2, size: 64, align: 64, elements: !176, templateParams: !144, identifier: "9bd01411173ce4ab4efbe854043a5913")
!174 = !DINamespace(name: "unique", scope: !175)
!175 = !DINamespace(name: "ptr", scope: !28)
!176 = !{!177, !178}
!177 = !DIDerivedType(tag: DW_TAG_member, name: "pointer", scope: !173, file: !2, baseType: !103, size: 64, align: 64)
!178 = !DIDerivedType(tag: DW_TAG_member, name: "_marker", scope: !173, file: !2, baseType: !179, align: 8)
!179 = !DICompositeType(tag: DW_TAG_structure_type, name: "PhantomData<i32>", scope: !180, file: !2, align: 8, elements: !4, templateParams: !144, identifier: "ce25c0579c8ed8e288f10687805344c")
!180 = !DINamespace(name: "marker", scope: !28)
!181 = !DIDerivedType(tag: DW_TAG_member, name: "cap", scope: !169, file: !2, baseType: !105, size: 64, align: 64, offset: 64)
!182 = !DIDerivedType(tag: DW_TAG_member, name: "alloc", scope: !169, file: !2, baseType: !183, align: 8)
!183 = !DICompositeType(tag: DW_TAG_structure_type, name: "Global", scope: !184, file: !2, align: 8, elements: !4, templateParams: !4, identifier: "3c2a7285f38ca692649fa894e9f6e5ec")
!184 = !DINamespace(name: "alloc", scope: !166)
!185 = !{!145, !186}
!186 = !DITemplateTypeParameter(name: "A", type: !183)
!187 = !DIDerivedType(tag: DW_TAG_member, name: "len", scope: !164, file: !2, baseType: !105, size: 64, align: 64, offset: 128)
!188 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "fn(&alloc::vec::Vec<i32>, &mut core::fmt::Formatter) -> core::result::Result<(), core::fmt::Error>", baseType: !189, size: 64, align: 64, dwarfAddressSpace: 0)
!189 = !DISubroutineType(types: !190)
!190 = !{!26, !163, !106}
!191 = !{!192, !193}
!192 = !DILocalVariable(name: "x", arg: 1, scope: !151, file: !96, line: 281, type: !163)
!193 = !DILocalVariable(name: "f", arg: 2, scope: !151, file: !96, line: 281, type: !188)
!194 = !{!195}
!195 = !DITemplateTypeParameter(name: "T", type: !164)
!196 = !DILocation(line: 281, column: 23, scope: !151)
!197 = !DILocation(line: 281, column: 33, scope: !151)
!198 = !DILocation(line: 290, column: 42, scope: !151)
!199 = !DILocation(line: 290, column: 68, scope: !151)
!200 = !DILocation(line: 290, column: 18, scope: !151)
!201 = !DILocation(line: 291, column: 6, scope: !151)
!202 = distinct !DISubprogram(name: "entries<&i32,core::slice::Iter<i32>>", linkageName: "_ZN4core3fmt8builders9DebugList7entries17had1afd429741e4d2E", scope: !204, file: !203, line: 656, type: !214, scopeLine: 656, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !241, retainedNodes: !230)
!203 = !DIFile(filename: "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libcore/fmt/builders.rs", directory: "", checksumkind: CSK_MD5, checksum: "912044e91f471a1356a278de9b74d56a")
!204 = !DICompositeType(tag: DW_TAG_structure_type, name: "DebugList", scope: !205, file: !2, size: 128, align: 64, elements: !206, templateParams: !4, identifier: "46d4648953124d58fb865c8dbb90010")
!205 = !DINamespace(name: "builders", scope: !36)
!206 = !{!207}
!207 = !DIDerivedType(tag: DW_TAG_member, name: "inner", scope: !204, file: !2, baseType: !208, size: 128, align: 64)
!208 = !DICompositeType(tag: DW_TAG_structure_type, name: "DebugInner", scope: !205, file: !2, size: 128, align: 64, elements: !209, templateParams: !4, identifier: "c20e5a226c617df43632329dcab666ec")
!209 = !{!210, !211, !212}
!210 = !DIDerivedType(tag: DW_TAG_member, name: "fmt", scope: !208, file: !2, baseType: !106, size: 64, align: 64)
!211 = !DIDerivedType(tag: DW_TAG_member, name: "result", scope: !208, file: !2, baseType: !26, size: 8, align: 8, offset: 64)
!212 = !DIDerivedType(tag: DW_TAG_member, name: "has_fields", scope: !208, file: !2, baseType: !213, size: 8, align: 8, offset: 72)
!213 = !DIBasicType(name: "bool", size: 8, encoding: DW_ATE_boolean)
!214 = !DISubroutineType(types: !215)
!215 = !{!216, !216, !217}
!216 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&mut core::fmt::builders::DebugList", baseType: !204, size: 64, align: 64, dwarfAddressSpace: 0)
!217 = !DICompositeType(tag: DW_TAG_structure_type, name: "Iter<i32>", scope: !218, file: !2, size: 128, align: 64, elements: !219, templateParams: !144, identifier: "98b0070c25e7392377ce8b8a2c3c16a8")
!218 = !DINamespace(name: "slice", scope: !28)
!219 = !{!220, !225, !226}
!220 = !DIDerivedType(tag: DW_TAG_member, name: "ptr", scope: !217, file: !2, baseType: !221, size: 64, align: 64)
!221 = !DICompositeType(tag: DW_TAG_structure_type, name: "NonNull<i32>", scope: !222, file: !2, size: 64, align: 64, elements: !223, templateParams: !144, identifier: "8c4ff135bb6879327964554641fcc113")
!222 = !DINamespace(name: "non_null", scope: !175)
!223 = !{!224}
!224 = !DIDerivedType(tag: DW_TAG_member, name: "pointer", scope: !221, file: !2, baseType: !103, size: 64, align: 64)
!225 = !DIDerivedType(tag: DW_TAG_member, name: "end", scope: !217, file: !2, baseType: !103, size: 64, align: 64, offset: 64)
!226 = !DIDerivedType(tag: DW_TAG_member, name: "_marker", scope: !217, file: !2, baseType: !227, align: 8)
!227 = !DICompositeType(tag: DW_TAG_structure_type, name: "PhantomData<&i32>", scope: !180, file: !2, align: 8, elements: !4, templateParams: !228, identifier: "4c0c73db72ff6c8217889aa634ea4d0f")
!228 = !{!229}
!229 = !DITemplateTypeParameter(name: "T", type: !17)
!230 = !{!231, !232, !233, !235, !237, !239}
!231 = !DILocalVariable(name: "self", arg: 1, scope: !202, file: !203, line: 656, type: !216)
!232 = !DILocalVariable(name: "entries", arg: 2, scope: !202, file: !203, line: 656, type: !217)
!233 = !DILocalVariable(name: "iter", scope: !234, file: !203, line: 661, type: !217, align: 8)
!234 = distinct !DILexicalBlock(scope: !202, file: !203, line: 661, column: 9)
!235 = !DILocalVariable(name: "__next", scope: !236, file: !203, line: 661, type: !17, align: 8)
!236 = distinct !DILexicalBlock(scope: !234, file: !203, line: 661, column: 22)
!237 = !DILocalVariable(name: "val", scope: !238, file: !203, line: 661, type: !17, align: 8)
!238 = distinct !DILexicalBlock(scope: !236, file: !203, line: 661, column: 13)
!239 = !DILocalVariable(name: "entry", scope: !240, file: !203, line: 661, type: !17, align: 8)
!240 = distinct !DILexicalBlock(scope: !236, file: !203, line: 661, column: 22)
!241 = !{!242, !243}
!242 = !DITemplateTypeParameter(name: "D", type: !17)
!243 = !DITemplateTypeParameter(name: "I", type: !217)
!244 = !DILocation(line: 656, column: 26, scope: !202)
!245 = !DILocation(line: 656, column: 37, scope: !202)
!246 = !DILocation(line: 661, column: 22, scope: !234)
!247 = !DILocation(line: 661, column: 13, scope: !240)
!248 = !DILocation(line: 664, column: 9, scope: !202)
!249 = !DILocation(line: 661, column: 22, scope: !202)
!250 = !DILocation(line: 656, column: 5, scope: !202)
!251 = !DILocation(line: 661, column: 9, scope: !234)
!252 = !DILocation(line: 661, column: 22, scope: !236)
!253 = !DILocation(line: 663, column: 9, scope: !202)
!254 = !DILocation(line: 661, column: 13, scope: !236)
!255 = !DILocation(line: 661, column: 28, scope: !236)
!256 = !DILocation(line: 661, column: 13, scope: !238)
!257 = !DILocation(line: 662, column: 24, scope: !240)
!258 = !DILocation(line: 662, column: 13, scope: !240)
!259 = !DILocation(line: 663, column: 9, scope: !234)
!260 = !DILocation(line: 663, column: 9, scope: !236)
!261 = !DILocation(line: 665, column: 6, scope: !202)
!262 = !{i8 0, i8 2}
!263 = distinct !DISubprogram(name: "new_v1", linkageName: "_ZN4core3fmt9Arguments6new_v117h0eff704c401da8f4E", scope: !264, file: !96, line: 327, type: !326, scopeLine: 327, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !4, retainedNodes: !328)
!264 = !DICompositeType(tag: DW_TAG_structure_type, name: "Arguments", scope: !36, file: !2, size: 384, align: 64, elements: !265, templateParams: !4, identifier: "8b5c829e94f1f16a7a10845b7d2f68e6")
!265 = !{!266, !276, !320}
!266 = !DIDerivedType(tag: DW_TAG_member, name: "pieces", scope: !264, file: !2, baseType: !267, size: 128, align: 64)
!267 = !DICompositeType(tag: DW_TAG_structure_type, name: "&[&str]", file: !2, size: 128, align: 64, elements: !268, templateParams: !4, identifier: "e5181a2ba73cefd2b9372dc5646453a9")
!268 = !{!269, !275}
!269 = !DIDerivedType(tag: DW_TAG_member, name: "data_ptr", scope: !267, file: !2, baseType: !270, size: 64, align: 64)
!270 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "*const &str", baseType: !271, size: 64, align: 64, dwarfAddressSpace: 0)
!271 = !DICompositeType(tag: DW_TAG_structure_type, name: "&str", file: !2, size: 128, align: 64, elements: !272, templateParams: !4, identifier: "7ef2a91eecc7bcf4b4aaea2dbce79437")
!272 = !{!273, !274}
!273 = !DIDerivedType(tag: DW_TAG_member, name: "data_ptr", scope: !271, file: !2, baseType: !54, size: 64, align: 64)
!274 = !DIDerivedType(tag: DW_TAG_member, name: "length", scope: !271, file: !2, baseType: !105, size: 64, align: 64, offset: 64)
!275 = !DIDerivedType(tag: DW_TAG_member, name: "length", scope: !267, file: !2, baseType: !105, size: 64, align: 64, offset: 64)
!276 = !DIDerivedType(tag: DW_TAG_member, name: "fmt", scope: !264, file: !2, baseType: !277, size: 128, align: 64, offset: 128)
!277 = !DICompositeType(tag: DW_TAG_structure_type, name: "Option<&[core::fmt::rt::v1::Argument]>", scope: !116, file: !2, size: 128, align: 64, elements: !278, identifier: "243099879e0e5ee49f3519ba7eadd289")
!278 = !{!279}
!279 = !DICompositeType(tag: DW_TAG_variant_part, scope: !116, file: !2, size: 128, align: 64, elements: !280, templateParams: !283, identifier: "243099879e0e5ee49f3519ba7eadd289_variant_part", discriminator: !128)
!280 = !{!281, !316}
!281 = !DIDerivedType(tag: DW_TAG_member, name: "None", scope: !279, file: !2, baseType: !282, size: 128, align: 64, extraData: i64 0)
!282 = !DICompositeType(tag: DW_TAG_structure_type, name: "None", scope: !277, file: !2, size: 128, align: 64, elements: !4, templateParams: !283, identifier: "243099879e0e5ee49f3519ba7eadd289::None")
!283 = !{!284}
!284 = !DITemplateTypeParameter(name: "T", type: !285)
!285 = !DICompositeType(tag: DW_TAG_structure_type, name: "&[core::fmt::rt::v1::Argument]", file: !2, size: 128, align: 64, elements: !286, templateParams: !4, identifier: "3c78d3a2d948400464baf8a2fc912f00")
!286 = !{!287, !315}
!287 = !DIDerivedType(tag: DW_TAG_member, name: "data_ptr", scope: !285, file: !2, baseType: !288, size: 64, align: 64)
!288 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "*const core::fmt::rt::v1::Argument", baseType: !289, size: 64, align: 64, dwarfAddressSpace: 0)
!289 = !DICompositeType(tag: DW_TAG_structure_type, name: "Argument", scope: !34, file: !2, size: 448, align: 64, elements: !290, templateParams: !4, identifier: "e324b069410808468c3e929a8911255")
!290 = !{!291, !292}
!291 = !DIDerivedType(tag: DW_TAG_member, name: "position", scope: !289, file: !2, baseType: !105, size: 64, align: 64)
!292 = !DIDerivedType(tag: DW_TAG_member, name: "format", scope: !289, file: !2, baseType: !293, size: 384, align: 64, offset: 64)
!293 = !DICompositeType(tag: DW_TAG_structure_type, name: "FormatSpec", scope: !34, file: !2, size: 384, align: 64, elements: !294, templateParams: !4, identifier: "249fa4b516df38d2aba49ff531bafb12")
!294 = !{!295, !296, !297, !298, !314}
!295 = !DIDerivedType(tag: DW_TAG_member, name: "fill", scope: !293, file: !2, baseType: !112, size: 32, align: 32, offset: 256)
!296 = !DIDerivedType(tag: DW_TAG_member, name: "align", scope: !293, file: !2, baseType: !33, size: 8, align: 8, offset: 320)
!297 = !DIDerivedType(tag: DW_TAG_member, name: "flags", scope: !293, file: !2, baseType: !110, size: 32, align: 32, offset: 288)
!298 = !DIDerivedType(tag: DW_TAG_member, name: "precision", scope: !293, file: !2, baseType: !299, size: 128, align: 64)
!299 = !DICompositeType(tag: DW_TAG_structure_type, name: "Count", scope: !34, file: !2, size: 128, align: 64, elements: !300, identifier: "2bdd31adc6e384932fb2a9b809e7f79b")
!300 = !{!301}
!301 = !DICompositeType(tag: DW_TAG_variant_part, scope: !34, file: !2, size: 128, align: 64, elements: !302, templateParams: !4, identifier: "2bdd31adc6e384932fb2a9b809e7f79b_variant_part", discriminator: !313)
!302 = !{!303, !307, !311}
!303 = !DIDerivedType(tag: DW_TAG_member, name: "Is", scope: !301, file: !2, baseType: !304, size: 128, align: 64, extraData: i64 0)
!304 = !DICompositeType(tag: DW_TAG_structure_type, name: "Is", scope: !299, file: !2, size: 128, align: 64, elements: !305, templateParams: !4, identifier: "2bdd31adc6e384932fb2a9b809e7f79b::Is")
!305 = !{!306}
!306 = !DIDerivedType(tag: DW_TAG_member, name: "__0", scope: !304, file: !2, baseType: !105, size: 64, align: 64, offset: 64)
!307 = !DIDerivedType(tag: DW_TAG_member, name: "Param", scope: !301, file: !2, baseType: !308, size: 128, align: 64, extraData: i64 1)
!308 = !DICompositeType(tag: DW_TAG_structure_type, name: "Param", scope: !299, file: !2, size: 128, align: 64, elements: !309, templateParams: !4, identifier: "2bdd31adc6e384932fb2a9b809e7f79b::Param")
!309 = !{!310}
!310 = !DIDerivedType(tag: DW_TAG_member, name: "__0", scope: !308, file: !2, baseType: !105, size: 64, align: 64, offset: 64)
!311 = !DIDerivedType(tag: DW_TAG_member, name: "Implied", scope: !301, file: !2, baseType: !312, size: 128, align: 64, extraData: i64 2)
!312 = !DICompositeType(tag: DW_TAG_structure_type, name: "Implied", scope: !299, file: !2, size: 128, align: 64, elements: !4, templateParams: !4, identifier: "2bdd31adc6e384932fb2a9b809e7f79b::Implied")
!313 = !DIDerivedType(tag: DW_TAG_member, scope: !34, file: !2, baseType: !129, size: 64, align: 64, flags: DIFlagArtificial)
!314 = !DIDerivedType(tag: DW_TAG_member, name: "width", scope: !293, file: !2, baseType: !299, size: 128, align: 64, offset: 128)
!315 = !DIDerivedType(tag: DW_TAG_member, name: "length", scope: !285, file: !2, baseType: !105, size: 64, align: 64, offset: 64)
!316 = !DIDerivedType(tag: DW_TAG_member, name: "Some", scope: !279, file: !2, baseType: !317, size: 128, align: 64)
!317 = !DICompositeType(tag: DW_TAG_structure_type, name: "Some", scope: !277, file: !2, size: 128, align: 64, elements: !318, templateParams: !283, identifier: "243099879e0e5ee49f3519ba7eadd289::Some")
!318 = !{!319}
!319 = !DIDerivedType(tag: DW_TAG_member, name: "__0", scope: !317, file: !2, baseType: !285, size: 128, align: 64)
!320 = !DIDerivedType(tag: DW_TAG_member, name: "args", scope: !264, file: !2, baseType: !321, size: 128, align: 64, offset: 256)
!321 = !DICompositeType(tag: DW_TAG_structure_type, name: "&[core::fmt::ArgumentV1]", file: !2, size: 128, align: 64, elements: !322, templateParams: !4, identifier: "fb40bda290cc33697a71f11cf93adb20")
!322 = !{!323, !325}
!323 = !DIDerivedType(tag: DW_TAG_member, name: "data_ptr", scope: !321, file: !2, baseType: !324, size: 64, align: 64)
!324 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "*const core::fmt::ArgumentV1", baseType: !152, size: 64, align: 64, dwarfAddressSpace: 0)
!325 = !DIDerivedType(tag: DW_TAG_member, name: "length", scope: !321, file: !2, baseType: !105, size: 64, align: 64, offset: 64)
!326 = !DISubroutineType(types: !327)
!327 = !{!264, !267, !321}
!328 = !{!329, !330}
!329 = !DILocalVariable(name: "pieces", arg: 1, scope: !263, file: !96, line: 327, type: !267)
!330 = !DILocalVariable(name: "args", arg: 2, scope: !263, file: !96, line: 327, type: !321)
!331 = !DILocation(line: 327, column: 19, scope: !263)
!332 = !DILocation(line: 327, column: 42, scope: !263)
!333 = !DILocation(line: 328, column: 34, scope: !263)
!334 = !DILocation(line: 328, column: 9, scope: !263)
!335 = !DILocation(line: 329, column: 6, scope: !263)
!336 = distinct !DISubprogram(name: "new_unchecked", linkageName: "_ZN4core3num12NonZeroUsize13new_unchecked17h5f2101f47de8d5b2E", scope: !338, file: !337, line: 76, type: !342, scopeLine: 76, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !4, retainedNodes: !344)
!337 = !DIFile(filename: "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libcore/num/mod.rs", directory: "", checksumkind: CSK_MD5, checksum: "ac6d91326c826e6434d9662e3774b224")
!338 = !DICompositeType(tag: DW_TAG_structure_type, name: "NonZeroUsize", scope: !339, file: !2, size: 64, align: 64, elements: !340, templateParams: !4, identifier: "e595025c6e7480b54d3862e3a38d4f37")
!339 = !DINamespace(name: "num", scope: !28)
!340 = !{!341}
!341 = !DIDerivedType(tag: DW_TAG_member, name: "__0", scope: !338, file: !2, baseType: !105, size: 64, align: 64)
!342 = !DISubroutineType(types: !343)
!343 = !{!338, !105}
!344 = !{!345}
!345 = !DILocalVariable(name: "n", arg: 1, scope: !336, file: !337, line: 76, type: !105)
!346 = !DILocation(line: 76, column: 51, scope: !336)
!347 = !DILocation(line: 77, column: 21, scope: !336)
!348 = !DILocation(line: 78, column: 18, scope: !336)
!349 = !{i64 1, i64 0}
!350 = distinct !DISubprogram(name: "get", linkageName: "_ZN4core3num12NonZeroUsize3get17hae8ab9fa718e6010E", scope: !338, file: !337, line: 97, type: !351, scopeLine: 97, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !4, retainedNodes: !353)
!351 = !DISubroutineType(types: !352)
!352 = !{!105, !338}
!353 = !{!354}
!354 = !DILocalVariable(name: "self", arg: 1, scope: !350, file: !337, line: 97, type: !338)
!355 = !DILocation(line: 97, column: 34, scope: !350)
!356 = !DILocation(line: 99, column: 18, scope: !350)
!357 = distinct !DISubprogram(name: "checked_mul", linkageName: "_ZN4core3num23_$LT$impl$u20$usize$GT$11checked_mul17h3d82c6e973ce4761E", scope: !358, file: !337, line: 3062, type: !359, scopeLine: 3062, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !4, retainedNodes: !361)
!358 = !DINamespace(name: "{{impl}}", scope: !339)
!359 = !DISubroutineType(types: !360)
!360 = !{!115, !105, !105}
!361 = !{!362, !363, !364, !366}
!362 = !DILocalVariable(name: "self", arg: 1, scope: !357, file: !337, line: 3062, type: !105)
!363 = !DILocalVariable(name: "rhs", arg: 2, scope: !357, file: !337, line: 3062, type: !105)
!364 = !DILocalVariable(name: "a", scope: !365, file: !337, line: 3063, type: !105, align: 8)
!365 = distinct !DILexicalBlock(scope: !357, file: !337, line: 3063, column: 17)
!366 = !DILocalVariable(name: "b", scope: !365, file: !337, line: 3063, type: !213, align: 1)
!367 = !DILocation(line: 3062, column: 38, scope: !357)
!368 = !DILocation(line: 3062, column: 44, scope: !357)
!369 = !DILocation(line: 3063, column: 30, scope: !357)
!370 = !DILocation(line: 3063, column: 22, scope: !357)
!371 = !DILocation(line: 3063, column: 22, scope: !365)
!372 = !DILocation(line: 3063, column: 25, scope: !357)
!373 = !DILocation(line: 3063, column: 25, scope: !365)
!374 = !DILocation(line: 3064, column: 17, scope: !365)
!375 = !DILocation(line: 3064, column: 35, scope: !365)
!376 = !DILocation(line: 3064, column: 23, scope: !365)
!377 = !DILocation(line: 3065, column: 14, scope: !357)
!378 = !{i64 0, i64 2}
!379 = distinct !DISubprogram(name: "saturating_mul", linkageName: "_ZN4core3num23_$LT$impl$u20$usize$GT$14saturating_mul17hdb30f381b437dd7eE", scope: !358, file: !337, line: 3366, type: !380, scopeLine: 3366, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !4, retainedNodes: !382)
!380 = !DISubroutineType(types: !381)
!381 = !{!105, !105, !105}
!382 = !{!383, !384, !385}
!383 = !DILocalVariable(name: "self", arg: 1, scope: !379, file: !337, line: 3366, type: !105)
!384 = !DILocalVariable(name: "rhs", arg: 2, scope: !379, file: !337, line: 3366, type: !105)
!385 = !DILocalVariable(name: "x", scope: !386, file: !337, line: 3368, type: !105, align: 8)
!386 = distinct !DILexicalBlock(scope: !379, file: !337, line: 3368, column: 21)
!387 = !DILocation(line: 3366, column: 41, scope: !379)
!388 = !DILocation(line: 3366, column: 47, scope: !379)
!389 = !DILocation(line: 3367, column: 23, scope: !379)
!390 = !DILocation(line: 3368, column: 21, scope: !379)
!391 = !DILocation(line: 3369, column: 29, scope: !379)
!392 = !DILocation(line: 3368, column: 26, scope: !379)
!393 = !DILocation(line: 3368, column: 26, scope: !386)
!394 = !DILocation(line: 3368, column: 32, scope: !386)
!395 = !DILocation(line: 3367, column: 17, scope: !379)
!396 = !DILocation(line: 3371, column: 14, scope: !379)
!397 = distinct !DISubprogram(name: "overflowing_mul", linkageName: "_ZN4core3num23_$LT$impl$u20$usize$GT$15overflowing_mul17hd53a242448b48532E", scope: !358, file: !337, line: 3787, type: !398, scopeLine: 3787, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !4, retainedNodes: !404)
!398 = !DISubroutineType(types: !399)
!399 = !{!400, !105, !105}
!400 = !DICompositeType(tag: DW_TAG_structure_type, name: "(usize, bool)", file: !2, size: 128, align: 64, elements: !401, templateParams: !4, identifier: "532fa6618cdb3964411c84139beb9950")
!401 = !{!402, !403}
!402 = !DIDerivedType(tag: DW_TAG_member, name: "__0", scope: !400, file: !2, baseType: !105, size: 64, align: 64)
!403 = !DIDerivedType(tag: DW_TAG_member, name: "__1", scope: !400, file: !2, baseType: !213, size: 8, align: 8, offset: 64)
!404 = !{!405, !406, !407, !409}
!405 = !DILocalVariable(name: "self", arg: 1, scope: !397, file: !337, line: 3787, type: !105)
!406 = !DILocalVariable(name: "rhs", arg: 2, scope: !397, file: !337, line: 3787, type: !105)
!407 = !DILocalVariable(name: "a", scope: !408, file: !337, line: 3788, type: !129, align: 8)
!408 = distinct !DILexicalBlock(scope: !397, file: !337, line: 3788, column: 13)
!409 = !DILocalVariable(name: "b", scope: !408, file: !337, line: 3788, type: !213, align: 1)
!410 = !DILocation(line: 3787, column: 38, scope: !397)
!411 = !DILocation(line: 3787, column: 44, scope: !397)
!412 = !DILocation(line: 3788, column: 26, scope: !397)
!413 = !DILocation(line: 3788, column: 18, scope: !397)
!414 = !DILocation(line: 3788, column: 18, scope: !408)
!415 = !DILocation(line: 3788, column: 21, scope: !397)
!416 = !DILocation(line: 3788, column: 21, scope: !408)
!417 = !DILocation(line: 3789, column: 13, scope: !408)
!418 = !DILocation(line: 3790, column: 10, scope: !397)
!419 = distinct !DISubprogram(name: "call_once<closure-0,()>", linkageName: "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h3bb9379a37e9b5e3E", scope: !421, file: !420, line: 232, type: !424, scopeLine: 232, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !430, retainedNodes: !427)
!420 = !DIFile(filename: "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libcore/ops/function.rs", directory: "", checksumkind: CSK_MD5, checksum: "4e38de05081e36b7316ccfac06754856")
!421 = !DINamespace(name: "FnOnce", scope: !422)
!422 = !DINamespace(name: "function", scope: !423)
!423 = !DINamespace(name: "ops", scope: !28)
!424 = !DISubroutineType(types: !425)
!425 = !{!18, !426}
!426 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "*mut closure-0", baseType: !5, size: 64, align: 64, dwarfAddressSpace: 0)
!427 = !{!428, !429}
!428 = !DILocalVariable(arg: 1, scope: !419, file: !420, line: 232, type: !426)
!429 = !DILocalVariable(arg: 2, scope: !419, file: !420, line: 232, type: !61)
!430 = !{!431, !432}
!431 = !DITemplateTypeParameter(name: "Self", type: !5)
!432 = !DITemplateTypeParameter(name: "Args", type: !61)
!433 = !DILocation(line: 232, column: 5, scope: !419)
!434 = distinct !DISubprogram(name: "call_once<closure-0,()>", linkageName: "_ZN4core3ops8function6FnOnce9call_once17h9e0d738d466035bcE", scope: !421, file: !420, line: 232, type: !435, scopeLine: 232, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !430, retainedNodes: !437)
!435 = !DISubroutineType(types: !436)
!436 = !{!18, !5}
!437 = !{!438, !439}
!438 = !DILocalVariable(arg: 1, scope: !434, file: !420, line: 232, type: !5)
!439 = !DILocalVariable(arg: 2, scope: !434, file: !420, line: 232, type: !61)
!440 = !DILocation(line: 232, column: 5, scope: !434)
!441 = distinct !DISubprogram(name: "drop_in_place<alloc::vec::Vec<i32>>", linkageName: "_ZN4core3ptr13drop_in_place17h3779003cde8a2e9cE", scope: !175, file: !442, line: 184, type: !443, scopeLine: 184, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !194, retainedNodes: !446)
!442 = !DIFile(filename: "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libcore/ptr/mod.rs", directory: "", checksumkind: CSK_MD5, checksum: "3a5ba522fe2039fe5996ec730d3af763")
!443 = !DISubroutineType(types: !444)
!444 = !{null, !445}
!445 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "*mut alloc::vec::Vec<i32>", baseType: !164, size: 64, align: 64, dwarfAddressSpace: 0)
!446 = !{!447}
!447 = !DILocalVariable(arg: 1, scope: !441, file: !442, line: 184, type: !445)
!448 = !DILocation(line: 184, column: 1, scope: !441)
!449 = distinct !DISubprogram(name: "drop_in_place<alloc::raw_vec::RawVec<i32, alloc::alloc::Global>>", linkageName: "_ZN4core3ptr13drop_in_place17h3956c02036868266E", scope: !175, file: !442, line: 184, type: !450, scopeLine: 184, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !455, retainedNodes: !453)
!450 = !DISubroutineType(types: !451)
!451 = !{null, !452}
!452 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "*mut alloc::raw_vec::RawVec<i32, alloc::alloc::Global>", baseType: !169, size: 64, align: 64, dwarfAddressSpace: 0)
!453 = !{!454}
!454 = !DILocalVariable(arg: 1, scope: !449, file: !442, line: 184, type: !452)
!455 = !{!456}
!456 = !DITemplateTypeParameter(name: "T", type: !169)
!457 = !DILocation(line: 184, column: 1, scope: !449)
!458 = distinct !DISubprogram(name: "drop_in_place<alloc::boxed::Box<[i32]>>", linkageName: "_ZN4core3ptr13drop_in_place17h6269e61f07cd105dE", scope: !175, file: !442, line: 184, type: !459, scopeLine: 184, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !473, retainedNodes: !471)
!459 = !DISubroutineType(types: !460)
!460 = !{null, !461}
!461 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "*mut alloc::boxed::Box<[i32]>", baseType: !462, size: 64, align: 64, dwarfAddressSpace: 0)
!462 = !DICompositeType(tag: DW_TAG_structure_type, name: "alloc::boxed::Box<[i32]>", file: !2, size: 128, align: 64, elements: !463, templateParams: !466, identifier: "be75f8ad6e5aefdd930719048d38e274")
!463 = !{!464, !465}
!464 = !DIDerivedType(tag: DW_TAG_member, name: "data_ptr", scope: !462, file: !2, baseType: !103, size: 64, align: 64)
!465 = !DIDerivedType(tag: DW_TAG_member, name: "length", scope: !462, file: !2, baseType: !105, size: 64, align: 64, offset: 64)
!466 = !{!467}
!467 = !DITemplateTypeParameter(name: "T", type: !468)
!468 = !DICompositeType(tag: DW_TAG_array_type, baseType: !18, align: 32, elements: !469)
!469 = !{!470}
!470 = !DISubrange(count: -1)
!471 = !{!472}
!472 = !DILocalVariable(arg: 1, scope: !458, file: !442, line: 184, type: !461)
!473 = !{!474}
!474 = !DITemplateTypeParameter(name: "T", type: !462)
!475 = !DILocation(line: 184, column: 1, scope: !458)
!476 = distinct !DISubprogram(name: "drop_in_place<closure-0>", linkageName: "_ZN4core3ptr13drop_in_place17hb53d219ce4265296E", scope: !175, file: !442, line: 184, type: !477, scopeLine: 184, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !481, retainedNodes: !479)
!477 = !DISubroutineType(types: !478)
!478 = !{null, !426}
!479 = !{!480}
!480 = !DILocalVariable(arg: 1, scope: !476, file: !442, line: 184, type: !426)
!481 = !{!482}
!482 = !DITemplateTypeParameter(name: "T", type: !5)
!483 = !DILocation(line: 184, column: 1, scope: !476)
!484 = distinct !DISubprogram(name: "drop_in_place<&i32>", linkageName: "_ZN4core3ptr13drop_in_place17hf8c5d4897aee99e4E", scope: !175, file: !442, line: 184, type: !485, scopeLine: 184, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !228, retainedNodes: !488)
!485 = !DISubroutineType(types: !486)
!486 = !{null, !487}
!487 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "*mut &i32", baseType: !17, size: 64, align: 64, dwarfAddressSpace: 0)
!488 = !{!489}
!489 = !DILocalVariable(arg: 1, scope: !484, file: !442, line: 184, type: !487)
!490 = !DILocation(line: 184, column: 1, scope: !484)
!491 = distinct !DISubprogram(name: "slice_from_raw_parts<i32>", linkageName: "_ZN4core3ptr20slice_from_raw_parts17h286fba5d8a605140E", scope: !175, file: !442, line: 262, type: !492, scopeLine: 262, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !144, retainedNodes: !498)
!492 = !DISubroutineType(types: !493)
!493 = !{!494, !103, !105}
!494 = !DICompositeType(tag: DW_TAG_structure_type, name: "*const [i32]", file: !2, size: 128, align: 64, elements: !495, templateParams: !4, identifier: "6bab3ab53ccb88f67790213f57460680")
!495 = !{!496, !497}
!496 = !DIDerivedType(tag: DW_TAG_member, name: "data_ptr", scope: !494, file: !2, baseType: !103, size: 64, align: 64)
!497 = !DIDerivedType(tag: DW_TAG_member, name: "length", scope: !494, file: !2, baseType: !105, size: 64, align: 64, offset: 64)
!498 = !{!499, !500}
!499 = !DILocalVariable(name: "data", arg: 1, scope: !491, file: !442, line: 262, type: !103)
!500 = !DILocalVariable(name: "len", arg: 2, scope: !491, file: !442, line: 262, type: !105)
!501 = !DILocation(line: 262, column: 38, scope: !491)
!502 = !DILocation(line: 262, column: 54, scope: !491)
!503 = !DILocation(line: 266, column: 26, scope: !491)
!504 = !DILocation(line: 266, column: 14, scope: !491)
!505 = !DILocation(line: 267, column: 2, scope: !491)
!506 = distinct !DISubprogram(name: "slice_from_raw_parts_mut<i32>", linkageName: "_ZN4core3ptr24slice_from_raw_parts_mut17h8773b5974a4856c9E", scope: !175, file: !442, line: 298, type: !507, scopeLine: 298, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !144, retainedNodes: !514)
!507 = !DISubroutineType(types: !508)
!508 = !{!509, !513, !105}
!509 = !DICompositeType(tag: DW_TAG_structure_type, name: "*mut [i32]", file: !2, size: 128, align: 64, elements: !510, templateParams: !4, identifier: "10b5b24448a541698e87ca354e57fa4a")
!510 = !{!511, !512}
!511 = !DIDerivedType(tag: DW_TAG_member, name: "data_ptr", scope: !509, file: !2, baseType: !103, size: 64, align: 64)
!512 = !DIDerivedType(tag: DW_TAG_member, name: "length", scope: !509, file: !2, baseType: !105, size: 64, align: 64, offset: 64)
!513 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "*mut i32", baseType: !18, size: 64, align: 64, dwarfAddressSpace: 0)
!514 = !{!515, !516}
!515 = !DILocalVariable(name: "data", arg: 1, scope: !506, file: !442, line: 298, type: !513)
!516 = !DILocalVariable(name: "len", arg: 2, scope: !506, file: !442, line: 298, type: !105)
!517 = !DILocation(line: 298, column: 42, scope: !506)
!518 = !DILocation(line: 298, column: 56, scope: !506)
!519 = !DILocation(line: 301, column: 26, scope: !506)
!520 = !DILocation(line: 301, column: 14, scope: !506)
!521 = !DILocation(line: 302, column: 2, scope: !506)
!522 = distinct !DISubprogram(name: "new_unchecked<i32>", linkageName: "_ZN4core3ptr6unique15Unique$LT$T$GT$13new_unchecked17h8ddd6ca994aafd6fE", scope: !173, file: !523, line: 89, type: !524, scopeLine: 89, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !144, retainedNodes: !526)
!523 = !DIFile(filename: "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libcore/ptr/unique.rs", directory: "", checksumkind: CSK_MD5, checksum: "7cd5ac48852c8b7ee8a622ab0d0cbdd9")
!524 = !DISubroutineType(types: !525)
!525 = !{!173, !513}
!526 = !{!527}
!527 = !DILocalVariable(name: "ptr", arg: 1, scope: !522, file: !523, line: 89, type: !513)
!528 = !DILocation(line: 89, column: 39, scope: !522)
!529 = !DILocation(line: 90, column: 9, scope: !522)
!530 = !DILocation(line: 91, column: 6, scope: !522)
!531 = distinct !DISubprogram(name: "cast<i32,u8>", linkageName: "_ZN4core3ptr6unique15Unique$LT$T$GT$4cast17h373689ae3567ff9aE", scope: !173, file: !523, line: 132, type: !532, scopeLine: 132, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !543, retainedNodes: !541)
!532 = !DISubroutineType(types: !533)
!533 = !{!534, !173}
!534 = !DICompositeType(tag: DW_TAG_structure_type, name: "Unique<u8>", scope: !174, file: !2, size: 64, align: 64, elements: !535, templateParams: !539, identifier: "c1b24e79f5bd0659ade01e20ee0e527a")
!535 = !{!536, !537}
!536 = !DIDerivedType(tag: DW_TAG_member, name: "pointer", scope: !534, file: !2, baseType: !54, size: 64, align: 64)
!537 = !DIDerivedType(tag: DW_TAG_member, name: "_marker", scope: !534, file: !2, baseType: !538, align: 8)
!538 = !DICompositeType(tag: DW_TAG_structure_type, name: "PhantomData<u8>", scope: !180, file: !2, align: 8, elements: !4, templateParams: !539, identifier: "eefda8e61cd6e98efcfc83b72ce1f98f")
!539 = !{!540}
!540 = !DITemplateTypeParameter(name: "T", type: !29)
!541 = !{!542}
!542 = !DILocalVariable(name: "self", arg: 1, scope: !531, file: !523, line: 132, type: !173)
!543 = !{!145, !544}
!544 = !DITemplateTypeParameter(name: "U", type: !29)
!545 = !DILocation(line: 132, column: 26, scope: !531)
!546 = !DILocation(line: 136, column: 40, scope: !531)
!547 = !DILocation(line: 136, column: 18, scope: !531)
!548 = !DILocation(line: 137, column: 6, scope: !531)
!549 = distinct !DISubprogram(name: "cast<[i32],u8>", linkageName: "_ZN4core3ptr6unique15Unique$LT$T$GT$4cast17hd0db8cb4ed1e5d02E", scope: !550, file: !523, line: 132, type: !555, scopeLine: 132, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !559, retainedNodes: !557)
!550 = !DICompositeType(tag: DW_TAG_structure_type, name: "Unique<[i32]>", scope: !174, file: !2, size: 128, align: 64, elements: !551, templateParams: !466, identifier: "1308b6a8d01fbc4ee98f041610f9166")
!551 = !{!552, !553}
!552 = !DIDerivedType(tag: DW_TAG_member, name: "pointer", scope: !550, file: !2, baseType: !494, size: 128, align: 64)
!553 = !DIDerivedType(tag: DW_TAG_member, name: "_marker", scope: !550, file: !2, baseType: !554, align: 8)
!554 = !DICompositeType(tag: DW_TAG_structure_type, name: "PhantomData<[i32]>", scope: !180, file: !2, align: 8, elements: !4, templateParams: !466, identifier: "dad16e613eec91aa2b56a84a73b87009")
!555 = !DISubroutineType(types: !556)
!556 = !{!534, !550}
!557 = !{!558}
!558 = !DILocalVariable(name: "self", arg: 1, scope: !549, file: !523, line: 132, type: !550)
!559 = !{!467, !544}
!560 = !DILocation(line: 132, column: 26, scope: !549)
!561 = !DILocation(line: 136, column: 40, scope: !549)
!562 = !DILocation(line: 136, column: 18, scope: !549)
!563 = !DILocation(line: 137, column: 6, scope: !549)
!564 = distinct !DISubprogram(name: "as_ptr<i32>", linkageName: "_ZN4core3ptr6unique15Unique$LT$T$GT$6as_ptr17h504bde568a512624E", scope: !173, file: !523, line: 106, type: !565, scopeLine: 106, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !144, retainedNodes: !567)
!565 = !DISubroutineType(types: !566)
!566 = !{!513, !173}
!567 = !{!568}
!568 = !DILocalVariable(name: "self", arg: 1, scope: !564, file: !523, line: 106, type: !173)
!569 = !DILocation(line: 106, column: 25, scope: !564)
!570 = !DILocation(line: 108, column: 6, scope: !564)
!571 = distinct !DISubprogram(name: "as_ptr<[i32]>", linkageName: "_ZN4core3ptr6unique15Unique$LT$T$GT$6as_ptr17hcada7862f094e013E", scope: !550, file: !523, line: 106, type: !572, scopeLine: 106, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !466, retainedNodes: !574)
!572 = !DISubroutineType(types: !573)
!573 = !{!509, !550}
!574 = !{!575}
!575 = !DILocalVariable(name: "self", arg: 1, scope: !571, file: !523, line: 106, type: !550)
!576 = !DILocation(line: 106, column: 25, scope: !571)
!577 = !DILocation(line: 107, column: 9, scope: !571)
!578 = !DILocation(line: 108, column: 6, scope: !571)
!579 = distinct !DISubprogram(name: "as_ref<[i32]>", linkageName: "_ZN4core3ptr6unique15Unique$LT$T$GT$6as_ref17h5c87c40cabb0fec7E", scope: !550, file: !523, line: 116, type: !580, scopeLine: 116, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !466, retainedNodes: !583)
!580 = !DISubroutineType(types: !581)
!581 = !{!100, !582}
!582 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&core::ptr::unique::Unique<[i32]>", baseType: !550, size: 64, align: 64, dwarfAddressSpace: 0)
!583 = !{!584}
!584 = !DILocalVariable(name: "self", arg: 1, scope: !579, file: !523, line: 116, type: !582)
!585 = !DILocation(line: 116, column: 26, scope: !579)
!586 = !DILocation(line: 117, column: 11, scope: !579)
!587 = !DILocation(line: 118, column: 6, scope: !579)
!588 = distinct !DISubprogram(name: "from_size_align_unchecked", linkageName: "_ZN4core5alloc6layout6Layout25from_size_align_unchecked17h4a9e124a64866af6E", scope: !590, file: !589, line: 92, type: !595, scopeLine: 92, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !4, retainedNodes: !597)
!589 = !DIFile(filename: "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libcore/alloc/layout.rs", directory: "", checksumkind: CSK_MD5, checksum: "127db5bd387bc87d1e5ee90ab2227b11")
!590 = !DICompositeType(tag: DW_TAG_structure_type, name: "Layout", scope: !591, file: !2, size: 128, align: 64, elements: !592, templateParams: !4, identifier: "927dd01db353dcd4885211c440f3379f")
!591 = !DINamespace(name: "layout", scope: !43)
!592 = !{!593, !594}
!593 = !DIDerivedType(tag: DW_TAG_member, name: "size_", scope: !590, file: !2, baseType: !105, size: 64, align: 64)
!594 = !DIDerivedType(tag: DW_TAG_member, name: "align_", scope: !590, file: !2, baseType: !338, size: 64, align: 64, offset: 64)
!595 = !DISubroutineType(types: !596)
!596 = !{!590, !105, !105}
!597 = !{!598, !599}
!598 = !DILocalVariable(name: "size", arg: 1, scope: !588, file: !589, line: 92, type: !105)
!599 = !DILocalVariable(name: "align", arg: 2, scope: !588, file: !589, line: 92, type: !105)
!600 = !DILocation(line: 92, column: 51, scope: !588)
!601 = !DILocation(line: 92, column: 64, scope: !588)
!602 = !DILocation(line: 93, column: 39, scope: !588)
!603 = !DILocation(line: 93, column: 9, scope: !588)
!604 = !DILocation(line: 94, column: 6, scope: !588)
!605 = distinct !DISubprogram(name: "size", linkageName: "_ZN4core5alloc6layout6Layout4size17hef4968c7788a7963E", scope: !590, file: !589, line: 100, type: !606, scopeLine: 100, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !4, retainedNodes: !609)
!606 = !DISubroutineType(types: !607)
!607 = !{!105, !608}
!608 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&core::alloc::layout::Layout", baseType: !590, size: 64, align: 64, dwarfAddressSpace: 0)
!609 = !{!610}
!610 = !DILocalVariable(name: "self", arg: 1, scope: !605, file: !589, line: 100, type: !608)
!611 = !DILocation(line: 100, column: 23, scope: !605)
!612 = !DILocation(line: 101, column: 9, scope: !605)
!613 = !DILocation(line: 102, column: 6, scope: !605)
!614 = distinct !DISubprogram(name: "align", linkageName: "_ZN4core5alloc6layout6Layout5align17h4710743b16bc1ec3E", scope: !590, file: !589, line: 108, type: !606, scopeLine: 108, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !4, retainedNodes: !615)
!615 = !{!616}
!616 = !DILocalVariable(name: "self", arg: 1, scope: !614, file: !589, line: 108, type: !608)
!617 = !DILocation(line: 108, column: 24, scope: !614)
!618 = !DILocation(line: 109, column: 9, scope: !614)
!619 = !DILocation(line: 110, column: 6, scope: !614)
!620 = distinct !DISubprogram(name: "dangling", linkageName: "_ZN4core5alloc6layout6Layout8dangling17hcdb81f93d89b8781E", scope: !590, file: !589, line: 145, type: !621, scopeLine: 145, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !4, retainedNodes: !626)
!621 = !DISubroutineType(types: !622)
!622 = !{!623, !608}
!623 = !DICompositeType(tag: DW_TAG_structure_type, name: "NonNull<u8>", scope: !222, file: !2, size: 64, align: 64, elements: !624, templateParams: !539, identifier: "c0cbea018408329f7e0a32812169ef")
!624 = !{!625}
!625 = !DIDerivedType(tag: DW_TAG_member, name: "pointer", scope: !623, file: !2, baseType: !54, size: 64, align: 64)
!626 = !{!627}
!627 = !DILocalVariable(name: "self", arg: 1, scope: !620, file: !589, line: 145, type: !608)
!628 = !DILocation(line: 145, column: 27, scope: !620)
!629 = !DILocation(line: 147, column: 41, scope: !620)
!630 = !DILocation(line: 147, column: 18, scope: !620)
!631 = !DILocation(line: 148, column: 6, scope: !620)
!632 = distinct !DISubprogram(name: "from_raw_parts<i32>", linkageName: "_ZN4core5slice14from_raw_parts17h1aa1aebb514c1027E", scope: !218, file: !633, line: 5810, type: !634, scopeLine: 5810, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !144, retainedNodes: !636)
!633 = !DIFile(filename: "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libcore/slice/mod.rs", directory: "", checksumkind: CSK_MD5, checksum: "c7a037eca467d6177f4636b7c20e3682")
!634 = !DISubroutineType(types: !635)
!635 = !{!100, !103, !105}
!636 = !{!637, !638}
!637 = !DILocalVariable(name: "data", arg: 1, scope: !632, file: !633, line: 5810, type: !103)
!638 = !DILocalVariable(name: "len", arg: 2, scope: !632, file: !633, line: 5810, type: !105)
!639 = !DILocation(line: 5810, column: 37, scope: !632)
!640 = !DILocation(line: 5810, column: 53, scope: !632)
!641 = !DILocation(line: 5811, column: 19, scope: !632)
!642 = !DILocation(line: 181, column: 59, scope: !643)
!643 = !DILexicalBlockFile(scope: !632, file: !644, discriminator: 0)
!644 = !DIFile(filename: "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libcore/macros/mod.rs", directory: "", checksumkind: CSK_MD5, checksum: "efed0519ea0e23644fbd5ff9cc8de065")
!645 = !DILocation(line: 310, column: 5, scope: !646, inlinedAt: !651)
!646 = distinct !DISubprogram(name: "size_of<i32>", linkageName: "_ZN4core3mem7size_of17he467cb2d39359c77E", scope: !648, file: !647, line: 309, type: !649, scopeLine: 309, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !144, retainedNodes: !4)
!647 = !DIFile(filename: "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libcore/mem/mod.rs", directory: "", checksumkind: CSK_MD5, checksum: "7a5ce57325dba992dcef2ba2372b4b4b")
!648 = !DINamespace(name: "mem", scope: !28)
!649 = !DISubroutineType(types: !650)
!650 = !{!105}
!651 = distinct !DILocation(line: 5813, column: 9, scope: !632)
!652 = !DILocation(line: 5813, column: 9, scope: !632)
!653 = !DILocation(line: 10, column: 9, scope: !643)
!654 = !DILocation(line: 5816, column: 7, scope: !632)
!655 = !DILocation(line: 5817, column: 2, scope: !632)
!656 = distinct !DISubprogram(name: "report", linkageName: "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h4bad777fd2d9aef6E", scope: !658, file: !657, line: 1667, type: !660, scopeLine: 1667, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !4, retainedNodes: !662)
!657 = !DIFile(filename: "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libstd/process.rs", directory: "", checksumkind: CSK_MD5, checksum: "bfa554ca649d4c8c8d446b86ff55b4bf")
!658 = !DINamespace(name: "{{impl}}", scope: !659)
!659 = !DINamespace(name: "process", scope: !8)
!660 = !DISubroutineType(types: !661)
!661 = !{!18, !61}
!662 = !{!663}
!663 = !DILocalVariable(name: "self", arg: 1, scope: !656, file: !657, line: 1667, type: !61)
!664 = !DILocation(line: 1667, column: 15, scope: !656)
!665 = !DILocation(line: 1668, column: 9, scope: !656)
!666 = !DILocation(line: 1669, column: 6, scope: !656)
!667 = distinct !DISubprogram(name: "as_mut_ptr<i32>", linkageName: "_ZN5alloc3vec12Vec$LT$T$GT$10as_mut_ptr17hf71855b8cc411b38E", scope: !164, file: !668, line: 852, type: !669, scopeLine: 852, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !144, retainedNodes: !672)
!668 = !DIFile(filename: "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/liballoc/vec.rs", directory: "", checksumkind: CSK_MD5, checksum: "33a3c0e30d59825c9446bf2015ebc3f8")
!669 = !DISubroutineType(types: !670)
!670 = !{!513, !671}
!671 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&mut alloc::vec::Vec<i32>", baseType: !164, size: 64, align: 64, dwarfAddressSpace: 0)
!672 = !{!673, !674}
!673 = !DILocalVariable(name: "self", arg: 1, scope: !667, file: !668, line: 852, type: !671)
!674 = !DILocalVariable(name: "ptr", scope: !675, file: !668, line: 855, type: !513, align: 8)
!675 = distinct !DILexicalBlock(scope: !667, file: !668, line: 855, column: 9)
!676 = !DILocation(line: 852, column: 23, scope: !667)
!677 = !DILocation(line: 855, column: 19, scope: !667)
!678 = !DILocation(line: 855, column: 13, scope: !675)
!679 = !DILocation(line: 857, column: 21, scope: !675)
!680 = !DILocation(line: 857, column: 20, scope: !675)
!681 = !DILocation(line: 857, column: 13, scope: !675)
!682 = !DILocation(line: 860, column: 6, scope: !667)
!683 = distinct !DISubprogram(name: "from_raw_parts<i32>", linkageName: "_ZN5alloc3vec12Vec$LT$T$GT$14from_raw_parts17h24529f0241d1b63fE", scope: !164, file: !668, line: 467, type: !684, scopeLine: 467, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !144, retainedNodes: !686)
!684 = !DISubroutineType(types: !685)
!685 = !{!164, !513, !105, !105}
!686 = !{!687, !688, !689}
!687 = !DILocalVariable(name: "ptr", arg: 1, scope: !683, file: !668, line: 467, type: !513)
!688 = !DILocalVariable(name: "length", arg: 2, scope: !683, file: !668, line: 467, type: !105)
!689 = !DILocalVariable(name: "capacity", arg: 3, scope: !683, file: !668, line: 467, type: !105)
!690 = !DILocation(line: 467, column: 34, scope: !683)
!691 = !DILocation(line: 467, column: 47, scope: !683)
!692 = !DILocation(line: 467, column: 62, scope: !683)
!693 = !DILocation(line: 468, column: 20, scope: !683)
!694 = !DILocation(line: 468, column: 9, scope: !683)
!695 = !DILocation(line: 469, column: 6, scope: !683)
!696 = distinct !DISubprogram(name: "as_ptr<i32>", linkageName: "_ZN5alloc3vec12Vec$LT$T$GT$6as_ptr17h8b923cff056d4624E", scope: !164, file: !668, line: 816, type: !697, scopeLine: 816, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !144, retainedNodes: !699)
!697 = !DISubroutineType(types: !698)
!698 = !{!103, !163}
!699 = !{!700, !701}
!700 = !DILocalVariable(name: "self", arg: 1, scope: !696, file: !668, line: 816, type: !163)
!701 = !DILocalVariable(name: "ptr", scope: !702, file: !668, line: 819, type: !513, align: 8)
!702 = distinct !DILexicalBlock(scope: !696, file: !668, line: 819, column: 9)
!703 = !DILocation(line: 816, column: 19, scope: !696)
!704 = !DILocation(line: 819, column: 19, scope: !696)
!705 = !DILocation(line: 819, column: 13, scope: !702)
!706 = !DILocation(line: 821, column: 21, scope: !702)
!707 = !DILocation(line: 821, column: 20, scope: !702)
!708 = !DILocation(line: 821, column: 13, scope: !702)
!709 = !DILocation(line: 824, column: 6, scope: !696)
!710 = distinct !DISubprogram(name: "alloc_zeroed", linkageName: "_ZN5alloc5alloc12alloc_zeroed17hd16472e9ffeccab0E", scope: !184, file: !711, line: 160, type: !712, scopeLine: 160, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !4, retainedNodes: !714)
!711 = !DIFile(filename: "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/liballoc/alloc.rs", directory: "", checksumkind: CSK_MD5, checksum: "32708d352332aed644b4d82a77bf0487")
!712 = !DISubroutineType(types: !713)
!713 = !{!135, !590}
!714 = !{!715}
!715 = !DILocalVariable(name: "layout", arg: 1, scope: !710, file: !711, line: 160, type: !590)
!716 = !DILocation(line: 160, column: 28, scope: !710)
!717 = !DILocation(line: 161, column: 25, scope: !710)
!718 = !DILocation(line: 161, column: 40, scope: !710)
!719 = !DILocation(line: 161, column: 5, scope: !710)
!720 = !DILocation(line: 162, column: 2, scope: !710)
!721 = distinct !DISubprogram(name: "exchange_malloc", linkageName: "_ZN5alloc5alloc15exchange_malloc17h264145ac6d203f21E", scope: !184, file: !711, line: 266, type: !722, scopeLine: 266, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !4, retainedNodes: !724)
!722 = !DISubroutineType(types: !723)
!723 = !{!135, !105, !105}
!724 = !{!725, !726, !727, !729}
!725 = !DILocalVariable(name: "size", arg: 1, scope: !721, file: !711, line: 266, type: !105)
!726 = !DILocalVariable(name: "align", arg: 2, scope: !721, file: !711, line: 266, type: !105)
!727 = !DILocalVariable(name: "layout", scope: !728, file: !711, line: 267, type: !590, align: 8)
!728 = distinct !DILexicalBlock(scope: !721, file: !711, line: 267, column: 5)
!729 = !DILocalVariable(name: "memory", scope: !730, file: !711, line: 269, type: !731, align: 8)
!730 = distinct !DILexicalBlock(scope: !728, file: !711, line: 269, column: 9)
!731 = !DICompositeType(tag: DW_TAG_structure_type, name: "MemoryBlock", scope: !43, file: !2, size: 128, align: 64, elements: !732, templateParams: !4, identifier: "a63893ea35ea4e9aaab40f712ebf369a")
!732 = !{!733, !734}
!733 = !DIDerivedType(tag: DW_TAG_member, name: "ptr", scope: !731, file: !2, baseType: !623, size: 64, align: 64)
!734 = !DIDerivedType(tag: DW_TAG_member, name: "size", scope: !731, file: !2, baseType: !105, size: 64, align: 64, offset: 64)
!735 = !DILocation(line: 266, column: 27, scope: !721)
!736 = !DILocation(line: 266, column: 40, scope: !721)
!737 = !DILocation(line: 267, column: 18, scope: !721)
!738 = !DILocation(line: 267, column: 9, scope: !728)
!739 = !DILocation(line: 268, column: 11, scope: !728)
!740 = !DILocation(line: 269, column: 9, scope: !728)
!741 = !DILocation(line: 270, column: 19, scope: !728)
!742 = !DILocation(line: 269, column: 12, scope: !728)
!743 = !DILocation(line: 269, column: 12, scope: !730)
!744 = !DILocation(line: 269, column: 23, scope: !730)
!745 = !DILocation(line: 272, column: 2, scope: !721)
!746 = distinct !DISubprogram(name: "alloc", linkageName: "_ZN5alloc5alloc5alloc17h2e7b42a5e27b448bE", scope: !184, file: !711, line: 79, type: !712, scopeLine: 79, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !4, retainedNodes: !747)
!747 = !{!748}
!748 = !DILocalVariable(name: "layout", arg: 1, scope: !746, file: !711, line: 79, type: !590)
!749 = !DILocation(line: 79, column: 21, scope: !746)
!750 = !DILocation(line: 80, column: 18, scope: !746)
!751 = !DILocation(line: 80, column: 33, scope: !746)
!752 = !DILocation(line: 80, column: 5, scope: !746)
!753 = !DILocation(line: 81, column: 2, scope: !746)
!754 = distinct !DISubprogram(name: "dealloc", linkageName: "_ZN5alloc5alloc7dealloc17hdbb4828ab2871b7dE", scope: !184, file: !711, line: 101, type: !755, scopeLine: 101, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !4, retainedNodes: !757)
!755 = !DISubroutineType(types: !756)
!756 = !{null, !135, !590}
!757 = !{!758, !759}
!758 = !DILocalVariable(name: "ptr", arg: 1, scope: !754, file: !711, line: 101, type: !135)
!759 = !DILocalVariable(name: "layout", arg: 2, scope: !754, file: !711, line: 101, type: !590)
!760 = !DILocation(line: 101, column: 23, scope: !754)
!761 = !DILocation(line: 101, column: 37, scope: !754)
!762 = !DILocation(line: 102, column: 25, scope: !754)
!763 = !DILocation(line: 102, column: 40, scope: !754)
!764 = !DILocation(line: 102, column: 5, scope: !754)
!765 = !DILocation(line: 103, column: 2, scope: !754)
!766 = distinct !DISubprogram(name: "box_free<[i32]>", linkageName: "_ZN5alloc5alloc8box_free17h92feb61dba2592c5E", scope: !184, file: !711, line: 281, type: !767, scopeLine: 281, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !466, retainedNodes: !769)
!767 = !DISubroutineType(types: !768)
!768 = !{null, !550}
!769 = !{!770, !771, !773, !775}
!770 = !DILocalVariable(name: "ptr", arg: 1, scope: !766, file: !711, line: 281, type: !550)
!771 = !DILocalVariable(name: "size", scope: !772, file: !711, line: 282, type: !105, align: 8)
!772 = distinct !DILexicalBlock(scope: !766, file: !711, line: 282, column: 5)
!773 = !DILocalVariable(name: "align", scope: !774, file: !711, line: 283, type: !105, align: 8)
!774 = distinct !DILexicalBlock(scope: !772, file: !711, line: 283, column: 5)
!775 = !DILocalVariable(name: "layout", scope: !776, file: !711, line: 284, type: !590, align: 8)
!776 = distinct !DILexicalBlock(scope: !774, file: !711, line: 284, column: 5)
!777 = !DILocation(line: 281, column: 42, scope: !766)
!778 = !DILocation(line: 282, column: 28, scope: !766)
!779 = !DILocation(line: 282, column: 16, scope: !766)
!780 = !DILocation(line: 282, column: 9, scope: !772)
!781 = !DILocation(line: 283, column: 34, scope: !772)
!782 = !DILocation(line: 283, column: 17, scope: !772)
!783 = !DILocation(line: 283, column: 9, scope: !774)
!784 = !DILocation(line: 284, column: 18, scope: !774)
!785 = !DILocation(line: 284, column: 9, scope: !776)
!786 = !DILocation(line: 285, column: 20, scope: !776)
!787 = !DILocation(line: 285, column: 5, scope: !776)
!788 = !DILocation(line: 286, column: 2, scope: !766)
!789 = distinct !DISubprogram(name: "leak<[i32]>", linkageName: "_ZN5alloc5boxed12Box$LT$T$GT$4leak17hf65e4cb473ed6749E", scope: !791, file: !790, line: 549, type: !793, scopeLine: 549, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !466, retainedNodes: !799)
!790 = !DIFile(filename: "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/liballoc/boxed.rs", directory: "", checksumkind: CSK_MD5, checksum: "e87bf360dc789016afebec0c76b5a74c")
!791 = !DINamespace(name: "{{impl}}", scope: !792)
!792 = !DINamespace(name: "boxed", scope: !166)
!793 = !DISubroutineType(types: !794)
!794 = !{!795, !462}
!795 = !DICompositeType(tag: DW_TAG_structure_type, name: "&mut [i32]", file: !2, size: 128, align: 64, elements: !796, templateParams: !4, identifier: "ee7b1216325f8b60d10ce8bf8280ad1e")
!796 = !{!797, !798}
!797 = !DIDerivedType(tag: DW_TAG_member, name: "data_ptr", scope: !795, file: !2, baseType: !103, size: 64, align: 64)
!798 = !DIDerivedType(tag: DW_TAG_member, name: "length", scope: !795, file: !2, baseType: !105, size: 64, align: 64, offset: 64)
!799 = !{!800}
!800 = !DILocalVariable(name: "b", arg: 1, scope: !789, file: !790, line: 549, type: !462)
!801 = !DILocalVariable(name: "self", arg: 1, scope: !802, file: !803, line: 171, type: !809)
!802 = distinct !DISubprogram(name: "deref_mut<alloc::boxed::Box<[i32]>>", linkageName: "_ZN94_$LT$core..mem..manually_drop..ManuallyDrop$LT$T$GT$$u20$as$u20$core..ops..deref..DerefMut$GT$9deref_mut17hf7194c9010c5917eE", scope: !804, file: !803, line: 171, type: !806, scopeLine: 171, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !473, retainedNodes: !813)
!803 = !DIFile(filename: "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libcore/mem/manually_drop.rs", directory: "", checksumkind: CSK_MD5, checksum: "760786ca2e5638f73e5d0905718a5b4f")
!804 = !DINamespace(name: "{{impl}}", scope: !805)
!805 = !DINamespace(name: "manually_drop", scope: !648)
!806 = !DISubroutineType(types: !807)
!807 = !{!808, !809}
!808 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&mut alloc::boxed::Box<[i32]>", baseType: !462, size: 64, align: 64, dwarfAddressSpace: 0)
!809 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&mut core::mem::manually_drop::ManuallyDrop<alloc::boxed::Box<[i32]>>", baseType: !810, size: 64, align: 64, dwarfAddressSpace: 0)
!810 = !DICompositeType(tag: DW_TAG_structure_type, name: "ManuallyDrop<alloc::boxed::Box<[i32]>>", scope: !805, file: !2, size: 128, align: 64, elements: !811, templateParams: !473, identifier: "45dd742780ef42ca25f30917e1382fb0")
!811 = !{!812}
!812 = !DIDerivedType(tag: DW_TAG_member, name: "value", scope: !810, file: !2, baseType: !462, size: 128, align: 64)
!813 = !{!801}
!814 = !DILocation(line: 171, column: 18, scope: !802, inlinedAt: !815)
!815 = distinct !DILocation(line: 553, column: 24, scope: !789)
!816 = !DILocalVariable(name: "value", arg: 1, scope: !817, file: !803, line: 82, type: !462)
!817 = distinct !DISubprogram(name: "new<alloc::boxed::Box<[i32]>>", linkageName: "_ZN4core3mem13manually_drop21ManuallyDrop$LT$T$GT$3new17h11633008f5f0972aE", scope: !810, file: !803, line: 82, type: !818, scopeLine: 82, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !473, retainedNodes: !820)
!818 = !DISubroutineType(types: !819)
!819 = !{!810, !462}
!820 = !{!816}
!821 = !DILocation(line: 82, column: 22, scope: !817, inlinedAt: !822)
!822 = distinct !DILocation(line: 553, column: 24, scope: !789)
!823 = !DILocation(line: 549, column: 21, scope: !789)
!824 = !{!825}
!825 = distinct !{!825, !826, !"_ZN4core3mem13manually_drop21ManuallyDrop$LT$T$GT$3new17h11633008f5f0972aE: %value.0"}
!826 = distinct !{!826, !"_ZN4core3mem13manually_drop21ManuallyDrop$LT$T$GT$3new17h11633008f5f0972aE"}
!827 = !DILocation(line: 83, column: 9, scope: !817, inlinedAt: !822)
!828 = !DILocation(line: 84, column: 6, scope: !817, inlinedAt: !822)
!829 = !DILocation(line: 553, column: 24, scope: !789)
!830 = !DILocation(line: 172, column: 9, scope: !802, inlinedAt: !815)
!831 = !DILocation(line: 554, column: 6, scope: !789)
!832 = distinct !DISubprogram(name: "into_raw<[i32]>", linkageName: "_ZN5alloc5boxed12Box$LT$T$GT$8into_raw17h8c8af3601ff3380bE", scope: !791, file: !790, line: 441, type: !833, scopeLine: 441, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !466, retainedNodes: !835)
!833 = !DISubroutineType(types: !834)
!834 = !{!509, !462}
!835 = !{!836}
!836 = !DILocalVariable(name: "b", arg: 1, scope: !832, file: !790, line: 441, type: !462)
!837 = !DILocation(line: 441, column: 21, scope: !832)
!838 = !DILocation(line: 447, column: 9, scope: !832)
!839 = !DILocation(line: 448, column: 6, scope: !832)
!840 = distinct !DISubprogram(name: "into_vec<i32>", linkageName: "_ZN5alloc5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$8into_vec17h8f0ff62baaf1865fE", scope: !842, file: !841, line: 414, type: !844, scopeLine: 414, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !144, retainedNodes: !846)
!841 = !DIFile(filename: "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/liballoc/slice.rs", directory: "", checksumkind: CSK_MD5, checksum: "19660a663bcb752bf9fee0ac94498da1")
!842 = !DINamespace(name: "{{impl}}", scope: !843)
!843 = !DINamespace(name: "slice", scope: !166)
!844 = !DISubroutineType(types: !845)
!845 = !{!164, !462}
!846 = !{!847}
!847 = !DILocalVariable(name: "self", arg: 1, scope: !840, file: !841, line: 414, type: !462)
!848 = !DILocation(line: 414, column: 21, scope: !840)
!849 = !DILocation(line: 416, column: 9, scope: !840)
!850 = !DILocation(line: 417, column: 6, scope: !840)
!851 = distinct !DISubprogram(name: "into_vec<i32>", linkageName: "_ZN5alloc5slice4hack8into_vec17h82c5c4ef3b4181bfE", scope: !852, file: !841, line: 146, type: !844, scopeLine: 146, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !144, retainedNodes: !853)
!852 = !DINamespace(name: "hack", scope: !843)
!853 = !{!854, !855, !857}
!854 = !DILocalVariable(name: "b", arg: 1, scope: !851, file: !841, line: 146, type: !462)
!855 = !DILocalVariable(name: "len", scope: !856, file: !841, line: 148, type: !105, align: 8)
!856 = distinct !DILexicalBlock(scope: !851, file: !841, line: 148, column: 13)
!857 = !DILocalVariable(name: "b", scope: !858, file: !841, line: 149, type: !509, align: 8)
!858 = distinct !DILexicalBlock(scope: !856, file: !841, line: 149, column: 13)
!859 = !DILocation(line: 146, column: 24, scope: !851)
!860 = !DILocation(line: 148, column: 17, scope: !851)
!861 = !DILocation(line: 148, column: 23, scope: !851)
!862 = !DILocation(line: 146, column: 5, scope: !851)
!863 = !DILocation(line: 148, column: 17, scope: !856)
!864 = !DILocation(line: 149, column: 35, scope: !856)
!865 = !DILocation(line: 149, column: 21, scope: !856)
!866 = !DILocation(line: 149, column: 17, scope: !858)
!867 = !DILocation(line: 150, column: 33, scope: !858)
!868 = !DILocation(line: 150, column: 13, scope: !858)
!869 = !DILocation(line: 152, column: 6, scope: !851)
!870 = !DILocation(line: 152, column: 5, scope: !851)
!871 = distinct !DISubprogram(name: "from_raw_parts<i32>", linkageName: "_ZN5alloc7raw_vec15RawVec$LT$T$GT$14from_raw_parts17hcc10cc6b4ed589ffE", scope: !169, file: !872, line: 110, type: !873, scopeLine: 110, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !144, retainedNodes: !875)
!872 = !DIFile(filename: "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/liballoc/raw_vec.rs", directory: "", checksumkind: CSK_MD5, checksum: "c799cf1081dab5d0f7be1273a5988207")
!873 = !DISubroutineType(types: !874)
!874 = !{!169, !513, !105}
!875 = !{!876, !877}
!876 = !DILocalVariable(name: "ptr", arg: 1, scope: !871, file: !872, line: 110, type: !513)
!877 = !DILocalVariable(name: "capacity", arg: 2, scope: !871, file: !872, line: 110, type: !105)
!878 = !DILocation(line: 110, column: 34, scope: !871)
!879 = !DILocation(line: 110, column: 47, scope: !871)
!880 = !DILocation(line: 111, column: 9, scope: !871)
!881 = !DILocation(line: 112, column: 6, scope: !871)
!882 = distinct !DISubprogram(name: "current_memory<i32,alloc::alloc::Global>", linkageName: "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$14current_memory17h29a0e371622c4c5bE", scope: !169, file: !872, line: 223, type: !883, scopeLine: 223, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !185, retainedNodes: !902)
!883 = !DISubroutineType(types: !884)
!884 = !{!885, !901}
!885 = !DICompositeType(tag: DW_TAG_structure_type, name: "Option<(core::ptr::non_null::NonNull<u8>, core::alloc::layout::Layout)>", scope: !116, file: !2, size: 192, align: 64, elements: !886, identifier: "e249086e09a942b9edeea8d2ea94c268")
!886 = !{!887}
!887 = !DICompositeType(tag: DW_TAG_variant_part, scope: !116, file: !2, size: 192, align: 64, elements: !888, templateParams: !891, identifier: "e249086e09a942b9edeea8d2ea94c268_variant_part", discriminator: !128)
!888 = !{!889, !897}
!889 = !DIDerivedType(tag: DW_TAG_member, name: "None", scope: !887, file: !2, baseType: !890, size: 192, align: 64, extraData: i64 0)
!890 = !DICompositeType(tag: DW_TAG_structure_type, name: "None", scope: !885, file: !2, size: 192, align: 64, elements: !4, templateParams: !891, identifier: "e249086e09a942b9edeea8d2ea94c268::None")
!891 = !{!892}
!892 = !DITemplateTypeParameter(name: "T", type: !893)
!893 = !DICompositeType(tag: DW_TAG_structure_type, name: "(core::ptr::non_null::NonNull<u8>, core::alloc::layout::Layout)", file: !2, size: 192, align: 64, elements: !894, templateParams: !4, identifier: "82cfbb7fa51c398435e196860c6d06e")
!894 = !{!895, !896}
!895 = !DIDerivedType(tag: DW_TAG_member, name: "__0", scope: !893, file: !2, baseType: !623, size: 64, align: 64)
!896 = !DIDerivedType(tag: DW_TAG_member, name: "__1", scope: !893, file: !2, baseType: !590, size: 128, align: 64, offset: 64)
!897 = !DIDerivedType(tag: DW_TAG_member, name: "Some", scope: !887, file: !2, baseType: !898, size: 192, align: 64)
!898 = !DICompositeType(tag: DW_TAG_structure_type, name: "Some", scope: !885, file: !2, size: 192, align: 64, elements: !899, templateParams: !891, identifier: "e249086e09a942b9edeea8d2ea94c268::Some")
!899 = !{!900}
!900 = !DIDerivedType(tag: DW_TAG_member, name: "__0", scope: !898, file: !2, baseType: !893, size: 192, align: 64)
!901 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&alloc::raw_vec::RawVec<i32, alloc::alloc::Global>", baseType: !169, size: 64, align: 64, dwarfAddressSpace: 0)
!902 = !{!903, !904, !906, !908}
!903 = !DILocalVariable(name: "self", arg: 1, scope: !882, file: !872, line: 223, type: !901)
!904 = !DILocalVariable(name: "align", scope: !905, file: !872, line: 230, type: !105, align: 8)
!905 = distinct !DILexicalBlock(scope: !882, file: !872, line: 230, column: 17)
!906 = !DILocalVariable(name: "size", scope: !907, file: !872, line: 231, type: !105, align: 8)
!907 = distinct !DILexicalBlock(scope: !905, file: !872, line: 231, column: 17)
!908 = !DILocalVariable(name: "layout", scope: !909, file: !872, line: 232, type: !590, align: 8)
!909 = distinct !DILexicalBlock(scope: !907, file: !872, line: 232, column: 17)
!910 = !DILocation(line: 223, column: 23, scope: !882)
!911 = !DILocation(line: 310, column: 5, scope: !646, inlinedAt: !912)
!912 = distinct !DILocation(line: 224, column: 12, scope: !882)
!913 = !DILocation(line: 224, column: 12, scope: !882)
!914 = !DILocation(line: 224, column: 40, scope: !882)
!915 = !DILocation(line: 224, column: 9, scope: !882)
!916 = !DILocation(line: 450, column: 5, scope: !917, inlinedAt: !918)
!917 = distinct !DISubprogram(name: "align_of<i32>", linkageName: "_ZN4core3mem8align_of17he3fd3f44f0861583E", scope: !648, file: !647, line: 449, type: !649, scopeLine: 449, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !144, retainedNodes: !4)
!918 = distinct !DILocation(line: 230, column: 29, scope: !882)
!919 = !DILocation(line: 230, column: 29, scope: !882)
!920 = !DILocation(line: 230, column: 21, scope: !905)
!921 = !DILocation(line: 225, column: 13, scope: !882)
!922 = !DILocation(line: 310, column: 5, scope: !646, inlinedAt: !923)
!923 = distinct !DILocation(line: 231, column: 28, scope: !905)
!924 = !DILocation(line: 231, column: 28, scope: !905)
!925 = !DILocation(line: 231, column: 50, scope: !905)
!926 = !DILocation(line: 231, column: 21, scope: !907)
!927 = !DILocation(line: 232, column: 30, scope: !907)
!928 = !DILocation(line: 232, column: 21, scope: !909)
!929 = !DILocation(line: 233, column: 23, scope: !909)
!930 = !DILocation(line: 233, column: 22, scope: !909)
!931 = !DILocation(line: 233, column: 17, scope: !909)
!932 = !DILocation(line: 236, column: 6, scope: !882)
!933 = distinct !DISubprogram(name: "from_raw_parts_in<i32,alloc::alloc::Global>", linkageName: "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$17from_raw_parts_in17h1489e32a0daf47edE", scope: !169, file: !872, line: 194, type: !934, scopeLine: 194, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !185, retainedNodes: !936)
!934 = !DISubroutineType(types: !935)
!935 = !{!169, !513, !105, !183}
!936 = !{!937, !938, !939}
!937 = !DILocalVariable(name: "ptr", arg: 1, scope: !933, file: !872, line: 194, type: !513)
!938 = !DILocalVariable(name: "capacity", arg: 2, scope: !933, file: !872, line: 194, type: !105)
!939 = !DILocalVariable(name: "a", arg: 3, scope: !933, file: !872, line: 194, type: !183)
!940 = !DILocation(line: 194, column: 37, scope: !933)
!941 = !DILocation(line: 194, column: 50, scope: !933)
!942 = !DILocation(line: 194, column: 67, scope: !933)
!943 = !DILocation(line: 195, column: 21, scope: !933)
!944 = !DILocation(line: 194, column: 5, scope: !933)
!945 = !DILocation(line: 195, column: 9, scope: !933)
!946 = !DILocation(line: 196, column: 6, scope: !933)
!947 = !DILocation(line: 196, column: 5, scope: !933)
!948 = distinct !DISubprogram(name: "ptr<i32,alloc::alloc::Global>", linkageName: "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$3ptr17h0db19e861b2d3b30E", scope: !169, file: !872, line: 201, type: !949, scopeLine: 201, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !185, retainedNodes: !951)
!949 = !DISubroutineType(types: !950)
!950 = !{!513, !901}
!951 = !{!952}
!952 = !DILocalVariable(name: "self", arg: 1, scope: !948, file: !872, line: 201, type: !901)
!953 = !DILocation(line: 201, column: 16, scope: !948)
!954 = !DILocation(line: 202, column: 9, scope: !948)
!955 = !DILocation(line: 203, column: 6, scope: !948)
!956 = distinct !DISubprogram(name: "fmt<i32>", linkageName: "_ZN61_$LT$alloc..vec..Vec$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hffd7ab4e6e5ba82dE", scope: !957, file: !668, line: 2422, type: !189, scopeLine: 2422, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !144, retainedNodes: !958)
!957 = !DINamespace(name: "{{impl}}", scope: !165)
!958 = !{!959, !960}
!959 = !DILocalVariable(name: "self", arg: 1, scope: !956, file: !668, line: 2422, type: !163)
!960 = !DILocalVariable(name: "f", arg: 2, scope: !956, file: !668, line: 2422, type: !106)
!961 = !DILocation(line: 2422, column: 12, scope: !956)
!962 = !DILocation(line: 2422, column: 19, scope: !956)
!963 = !DILocation(line: 2423, column: 26, scope: !956)
!964 = !DILocation(line: 2423, column: 9, scope: !956)
!965 = !DILocation(line: 2424, column: 6, scope: !956)
!966 = distinct !DISubprogram(name: "alloc", linkageName: "_ZN62_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..AllocRef$GT$5alloc17h545ef1d2b7748796E", scope: !967, file: !711, line: 167, type: !968, scopeLine: 167, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !4, retainedNodes: !988)
!967 = !DINamespace(name: "{{impl}}", scope: !184)
!968 = !DISubroutineType(types: !969)
!969 = !{!970, !987, !590, !42}
!970 = !DICompositeType(tag: DW_TAG_structure_type, name: "Result<core::alloc::MemoryBlock, core::alloc::AllocErr>", scope: !27, file: !2, size: 128, align: 64, elements: !971, identifier: "8fdba1ba55352ec57cebe8ceb3262acf")
!971 = !{!972}
!972 = !DICompositeType(tag: DW_TAG_variant_part, scope: !27, file: !2, size: 128, align: 64, elements: !973, templateParams: !978, identifier: "8fdba1ba55352ec57cebe8ceb3262acf_variant_part", discriminator: !986)
!973 = !{!974, !982}
!974 = !DIDerivedType(tag: DW_TAG_member, name: "Ok", scope: !972, file: !2, baseType: !975, size: 128, align: 64)
!975 = !DICompositeType(tag: DW_TAG_structure_type, name: "Ok", scope: !970, file: !2, size: 128, align: 64, elements: !976, templateParams: !978, identifier: "8fdba1ba55352ec57cebe8ceb3262acf::Ok")
!976 = !{!977}
!977 = !DIDerivedType(tag: DW_TAG_member, name: "__0", scope: !975, file: !2, baseType: !731, size: 128, align: 64)
!978 = !{!979, !980}
!979 = !DITemplateTypeParameter(name: "T", type: !731)
!980 = !DITemplateTypeParameter(name: "E", type: !981)
!981 = !DICompositeType(tag: DW_TAG_structure_type, name: "AllocErr", scope: !43, file: !2, align: 8, elements: !4, templateParams: !4, identifier: "c76cd898cb9f099d145a5cf9a72de84d")
!982 = !DIDerivedType(tag: DW_TAG_member, name: "Err", scope: !972, file: !2, baseType: !983, size: 128, align: 64, extraData: i64 0)
!983 = !DICompositeType(tag: DW_TAG_structure_type, name: "Err", scope: !970, file: !2, size: 128, align: 64, elements: !984, templateParams: !978, identifier: "8fdba1ba55352ec57cebe8ceb3262acf::Err")
!984 = !{!985}
!985 = !DIDerivedType(tag: DW_TAG_member, name: "__0", scope: !983, file: !2, baseType: !981, align: 8)
!986 = !DIDerivedType(tag: DW_TAG_member, scope: !27, file: !2, baseType: !129, size: 64, align: 64, flags: DIFlagArtificial)
!987 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&mut alloc::alloc::Global", baseType: !183, size: 64, align: 64, dwarfAddressSpace: 0)
!988 = !{!989, !990, !991, !992, !994, !996, !998, !1000}
!989 = !DILocalVariable(name: "self", arg: 1, scope: !966, file: !711, line: 167, type: !987)
!990 = !DILocalVariable(name: "layout", arg: 2, scope: !966, file: !711, line: 167, type: !590)
!991 = !DILocalVariable(name: "init", arg: 3, scope: !966, file: !711, line: 167, type: !42)
!992 = !DILocalVariable(name: "size", scope: !993, file: !711, line: 169, type: !105, align: 8)
!993 = distinct !DILexicalBlock(scope: !966, file: !711, line: 169, column: 13)
!994 = !DILocalVariable(name: "raw_ptr", scope: !995, file: !711, line: 173, type: !135, align: 8)
!995 = distinct !DILexicalBlock(scope: !993, file: !711, line: 173, column: 17)
!996 = !DILocalVariable(name: "ptr", scope: !997, file: !711, line: 177, type: !623, align: 8)
!997 = distinct !DILexicalBlock(scope: !995, file: !711, line: 177, column: 17)
!998 = !DILocalVariable(name: "err", scope: !999, file: !711, line: 177, type: !981, align: 1)
!999 = distinct !DILexicalBlock(scope: !995, file: !711, line: 177, column: 64)
!1000 = !DILocalVariable(name: "val", scope: !1001, file: !711, line: 177, type: !623, align: 8)
!1001 = distinct !DILexicalBlock(scope: !995, file: !711, line: 177, column: 27)
!1002 = !DILocation(line: 167, column: 14, scope: !966)
!1003 = !DILocation(line: 167, column: 25, scope: !966)
!1004 = !DILocation(line: 167, column: 41, scope: !966)
!1005 = !DILocation(line: 173, column: 21, scope: !995)
!1006 = !DILocation(line: 177, column: 64, scope: !999)
!1007 = !DILocation(line: 169, column: 24, scope: !966)
!1008 = !DILocation(line: 169, column: 17, scope: !993)
!1009 = !DILocation(line: 170, column: 16, scope: !993)
!1010 = !DILocation(line: 170, column: 13, scope: !993)
!1011 = !DILocation(line: 174, column: 21, scope: !993)
!1012 = !DILocation(line: 171, column: 39, scope: !993)
!1013 = !DILocation(line: 171, column: 20, scope: !993)
!1014 = !DILocation(line: 171, column: 17, scope: !993)
!1015 = !DILocation(line: 175, column: 55, scope: !993)
!1016 = !DILocation(line: 175, column: 42, scope: !993)
!1017 = !DILocation(line: 173, column: 37, scope: !993)
!1018 = !DILocation(line: 174, column: 55, scope: !993)
!1019 = !DILocation(line: 174, column: 49, scope: !993)
!1020 = !DILocation(line: 173, column: 31, scope: !993)
!1021 = !DILocation(line: 177, column: 40, scope: !995)
!1022 = !DILocation(line: 177, column: 27, scope: !995)
!1023 = !DILocation(line: 177, column: 64, scope: !995)
!1024 = !DILocation(line: 177, column: 27, scope: !1001)
!1025 = !DILocation(line: 177, column: 21, scope: !997)
!1026 = !DILocation(line: 178, column: 20, scope: !997)
!1027 = !DILocation(line: 178, column: 17, scope: !997)
!1028 = !DILocation(line: 181, column: 6, scope: !966)
!1029 = !DILocation(line: 177, column: 64, scope: !966)
!1030 = distinct !DISubprogram(name: "dealloc", linkageName: "_ZN62_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..AllocRef$GT$7dealloc17h3825975e1eb1fd39E", scope: !967, file: !711, line: 184, type: !1031, scopeLine: 184, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !4, retainedNodes: !1033)
!1031 = !DISubroutineType(types: !1032)
!1032 = !{null, !987, !623, !590}
!1033 = !{!1034, !1035, !1036}
!1034 = !DILocalVariable(name: "self", arg: 1, scope: !1030, file: !711, line: 184, type: !987)
!1035 = !DILocalVariable(name: "ptr", arg: 2, scope: !1030, file: !711, line: 184, type: !623)
!1036 = !DILocalVariable(name: "layout", arg: 3, scope: !1030, file: !711, line: 184, type: !590)
!1037 = !DILocation(line: 184, column: 23, scope: !1030)
!1038 = !DILocation(line: 184, column: 34, scope: !1030)
!1039 = !DILocation(line: 184, column: 52, scope: !1030)
!1040 = !DILocation(line: 185, column: 12, scope: !1030)
!1041 = !DILocation(line: 185, column: 9, scope: !1030)
!1042 = !DILocation(line: 186, column: 21, scope: !1030)
!1043 = !DILocation(line: 186, column: 35, scope: !1030)
!1044 = !DILocation(line: 186, column: 13, scope: !1030)
!1045 = !DILocation(line: 188, column: 6, scope: !1030)
!1046 = distinct !DISubprogram(name: "into_iter<core::slice::Iter<i32>>", linkageName: "_ZN63_$LT$I$u20$as$u20$core..iter..traits..collect..IntoIterator$GT$9into_iter17hbb686c5e7d86cbdeE", scope: !1048, file: !1047, line: 247, type: !1052, scopeLine: 247, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !1056, retainedNodes: !1054)
!1047 = !DIFile(filename: "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libcore/iter/traits/collect.rs", directory: "", checksumkind: CSK_MD5, checksum: "ab5d815a7d940fadbe767a6e9304aef3")
!1048 = !DINamespace(name: "{{impl}}", scope: !1049)
!1049 = !DINamespace(name: "collect", scope: !1050)
!1050 = !DINamespace(name: "traits", scope: !1051)
!1051 = !DINamespace(name: "iter", scope: !28)
!1052 = !DISubroutineType(types: !1053)
!1053 = !{!217, !217}
!1054 = !{!1055}
!1055 = !DILocalVariable(name: "self", arg: 1, scope: !1046, file: !1047, line: 247, type: !217)
!1056 = !{!243}
!1057 = !DILocation(line: 247, column: 18, scope: !1046)
!1058 = !DILocation(line: 249, column: 6, scope: !1046)
!1059 = distinct !DISubprogram(name: "drop<i32>", linkageName: "_ZN66_$LT$alloc..vec..Vec$LT$T$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h85f87b8320454e7eE", scope: !957, file: !668, line: 2401, type: !1060, scopeLine: 2401, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !144, retainedNodes: !1062)
!1060 = !DISubroutineType(types: !1061)
!1061 = !{null, !671}
!1062 = !{!1063}
!1063 = !DILocalVariable(name: "self", arg: 1, scope: !1059, file: !668, line: 2401, type: !671)
!1064 = !DILocation(line: 2401, column: 13, scope: !1059)
!1065 = !DILocation(line: 2406, column: 62, scope: !1059)
!1066 = !DILocation(line: 2406, column: 81, scope: !1059)
!1067 = !DILocation(line: 2406, column: 32, scope: !1059)
!1068 = !DILocation(line: 2406, column: 13, scope: !1059)
!1069 = !DILocation(line: 2409, column: 6, scope: !1059)
!1070 = distinct !DISubprogram(name: "deref<i32>", linkageName: "_ZN68_$LT$alloc..vec..Vec$LT$T$GT$$u20$as$u20$core..ops..deref..Deref$GT$5deref17h36511f1a6cab852fE", scope: !957, file: !668, line: 1912, type: !1071, scopeLine: 1912, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !144, retainedNodes: !1073)
!1071 = !DISubroutineType(types: !1072)
!1072 = !{!100, !163}
!1073 = !{!1074}
!1074 = !DILocalVariable(name: "self", arg: 1, scope: !1070, file: !668, line: 1912, type: !163)
!1075 = !DILocation(line: 1912, column: 14, scope: !1070)
!1076 = !DILocation(line: 1913, column: 40, scope: !1070)
!1077 = !DILocation(line: 1913, column: 55, scope: !1070)
!1078 = !DILocation(line: 1913, column: 18, scope: !1070)
!1079 = !DILocation(line: 1914, column: 6, scope: !1070)
!1080 = distinct !DISubprogram(name: "report", linkageName: "_ZN68_$LT$std..process..ExitCode$u20$as$u20$std..process..Termination$GT$6report17h870f4d10f7079208E", scope: !658, file: !657, line: 1701, type: !1081, scopeLine: 1701, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !4, retainedNodes: !1086)
!1081 = !DISubroutineType(types: !1082)
!1082 = !{!18, !1083}
!1083 = !DICompositeType(tag: DW_TAG_structure_type, name: "ExitCode", scope: !659, file: !2, size: 8, align: 8, elements: !1084, templateParams: !4, identifier: "f931a213b92e907d7aa051cd84262d42")
!1084 = !{!1085}
!1085 = !DIDerivedType(tag: DW_TAG_member, name: "__0", scope: !1083, file: !2, baseType: !80, size: 8, align: 8)
!1086 = !{!1087}
!1087 = !DILocalVariable(name: "self", arg: 1, scope: !1080, file: !657, line: 1701, type: !1083)
!1088 = !DILocation(line: 1701, column: 15, scope: !1080)
!1089 = !DILocation(line: 1702, column: 9, scope: !1080)
!1090 = !DILocation(line: 1703, column: 6, scope: !1080)
!1091 = distinct !DISubprogram(name: "drop<i32,alloc::alloc::Global>", linkageName: "_ZN77_$LT$alloc..raw_vec..RawVec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h667701eba3543d10E", scope: !1092, file: !872, line: 549, type: !1093, scopeLine: 549, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !185, retainedNodes: !1096)
!1092 = !DINamespace(name: "{{impl}}", scope: !170)
!1093 = !DISubroutineType(types: !1094)
!1094 = !{null, !1095}
!1095 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&mut alloc::raw_vec::RawVec<i32, alloc::alloc::Global>", baseType: !169, size: 64, align: 64, dwarfAddressSpace: 0)
!1096 = !{!1097, !1098, !1100}
!1097 = !DILocalVariable(name: "self", arg: 1, scope: !1091, file: !872, line: 549, type: !1095)
!1098 = !DILocalVariable(name: "ptr", scope: !1099, file: !872, line: 550, type: !623, align: 8)
!1099 = distinct !DILexicalBlock(scope: !1091, file: !872, line: 550, column: 60)
!1100 = !DILocalVariable(name: "layout", scope: !1099, file: !872, line: 550, type: !590, align: 8)
!1101 = !DILocation(line: 549, column: 13, scope: !1091)
!1102 = !DILocation(line: 550, column: 38, scope: !1091)
!1103 = !DILocation(line: 550, column: 16, scope: !1091)
!1104 = !DILocation(line: 550, column: 9, scope: !1091)
!1105 = !DILocation(line: 550, column: 22, scope: !1091)
!1106 = !DILocation(line: 550, column: 22, scope: !1099)
!1107 = !DILocation(line: 550, column: 27, scope: !1091)
!1108 = !DILocation(line: 550, column: 27, scope: !1099)
!1109 = !DILocation(line: 551, column: 22, scope: !1099)
!1110 = !DILocation(line: 553, column: 6, scope: !1091)
!1111 = distinct !DISubprogram(name: "heap", linkageName: "_ZN2t34heap17he50e910211807e5cE", scope: !1113, file: !1112, line: 1, type: !12, scopeLine: 1, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !23, templateParams: !4, retainedNodes: !1114)
!1112 = !DIFile(filename: "src/t3.rs", directory: "/home/vagrant/proj/rust/rust_llvm/rust_code", checksumkind: CSK_MD5, checksum: "af900e22f4e8bc7626df75d9c21bba91")
!1113 = !DINamespace(name: "t3", scope: null)
!1114 = !{!1115, !1117}
!1115 = !DILocalVariable(name: "v", scope: !1116, file: !1112, line: 2, type: !164, align: 8)
!1116 = distinct !DILexicalBlock(scope: !1111, file: !1112, line: 2, column: 5)
!1117 = !DILocalVariable(name: "arg0", scope: !1118, file: !1112, line: 3, type: !163, align: 8)
!1118 = !DILexicalBlockFile(scope: !1119, file: !1112, discriminator: 0)
!1119 = distinct !DILexicalBlock(scope: !1116, file: !1120, line: 97, column: 28)
!1120 = !DIFile(filename: "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libstd/macros.rs", directory: "/home/vagrant/proj/rust/rust_llvm/rust_code", checksumkind: CSK_MD5, checksum: "90a22a617c5a674ebac7f9ea2c05cd41")
!1121 = !DILocation(line: 2, column: 9, scope: !1116)
!1122 = !DILocation(line: 2, column: 13, scope: !1111)
!1123 = !DILocation(line: 1, column: 1, scope: !1111)
!1124 = !DILocation(line: 3, column: 14, scope: !1116)
!1125 = !DILocation(line: 3, column: 5, scope: !1116)
!1126 = !DILocation(line: 3, column: 5, scope: !1118)
!1127 = !DILocation(line: 4, column: 1, scope: !1111)
!1128 = !DILocation(line: 4, column: 2, scope: !1111)
!1129 = distinct !DISubprogram(name: "main", linkageName: "_ZN2t34main17h770501928fb2de42E", scope: !1113, file: !1112, line: 6, type: !12, scopeLine: 6, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagMainSubprogram, unit: !23, templateParams: !4, retainedNodes: !4)
!1130 = !DILocation(line: 7, column: 5, scope: !1129)
!1131 = !DILocation(line: 8, column: 2, scope: !1132)
!1132 = !DILexicalBlockFile(scope: !1129, file: !1112, discriminator: 0)

^0 = module: (path: "rust_code/src/t3a-raw.bc", hash: (1405604905, 934457890, 17251074, 4196746766, 3427540454))
^1 = gv: (name: "_ZN4core3num23_$LT$impl$u20$usize$GT$14saturating_mul17hdb30f381b437dd7eE", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 24, calls: ((callee: ^99))))) ; guid = 356461671464124017
^2 = gv: (name: "_ZN4core3ptr24slice_from_raw_parts_mut17h8773b5974a4856c9E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 27))) ; guid = 485581758667346444
^3 = gv: (name: "llvm.memcpy.p0i8.p0i8.i64") ; guid = 614884070845456474
^4 = gv: (name: "str.2", summaries: (variable: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), varFlags: (readonly: 1, writeonly: 1)))) ; guid = 681293906827091992
^5 = gv: (name: "_ZN4core3ptr13drop_in_place17h3956c02036868266E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 6, calls: ((callee: ^80))))) ; guid = 1370429957257002887
^6 = gv: (name: "__rust_alloc_zeroed") ; guid = 1523553558892608046
^7 = gv: (name: "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$3ptr17h0db19e861b2d3b30E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 7, calls: ((callee: ^19))))) ; guid = 1778930576442430755
^8 = gv: (name: "_ZN5alloc5boxed12Box$LT$T$GT$8into_raw17h8c8af3601ff3380bE", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 12, calls: ((callee: ^67))))) ; guid = 1851252835130776483
^9 = gv: (name: "_ZN4core3fmt10ArgumentV13new17h4ba1af7bed8ead9eE", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 27))) ; guid = 2310665562664090821
^10 = gv: (name: "_ZN4core10intrinsics23is_aligned_and_not_null17h48fb339f2584f6f4E") ; guid = 2436022183784892782
^11 = gv: (name: "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h37f61e5b7249be66E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 9, calls: ((callee: ^17))))) ; guid = 2500236555182245831
^12 = gv: (name: "alloc3", summaries: (variable: (module: ^0, flags: (linkage: private, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), varFlags: (readonly: 1, writeonly: 1), refs: (^15, ^29)))) ; guid = 2501864971932069891
^13 = gv: (name: "_ZN4core3num23_$LT$impl$u20$usize$GT$15overflowing_mul17hd53a242448b48532E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 39))) ; guid = 2583191558713835740
^14 = gv: (name: "llvm.expect.i1") ; guid = 2587125569932775682
^15 = gv: (name: "alloc1", summaries: (variable: (module: ^0, flags: (linkage: private, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), varFlags: (readonly: 1, writeonly: 1)))) ; guid = 2782947561341287249
^16 = gv: (name: "_ZN5alloc3vec12Vec$LT$T$GT$6as_ptr17h8b923cff056d4624E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 13, calls: ((callee: ^7), (callee: ^33))))) ; guid = 2789542670710309714
^17 = gv: (name: "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h4bad777fd2d9aef6E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 4, calls: ((callee: ^102))))) ; guid = 3352626916802229207
^18 = gv: (name: "_ZN4core3num12NonZeroUsize3get17hae8ab9fa718e6010E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 3))) ; guid = 3356571391808174008
^19 = gv: (name: "_ZN4core3ptr6unique15Unique$LT$T$GT$6as_ptr17h504bde568a512624E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 3))) ; guid = 3393141298981399206
^20 = gv: (name: "_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$4iter17h784389d7728d23b7E") ; guid = 3439018637698970332
^21 = gv: (name: "_ZN5alloc5slice4hack8into_vec17h82c5c4ef3b4181bfE", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 53, calls: ((callee: ^35), (callee: ^8), (callee: ^94), (callee: ^51)), refs: (^81)))) ; guid = 3712628593907388492
^22 = gv: (name: "_ZN4core3ptr13drop_in_place17h3779003cde8a2e9cE", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 27, calls: ((callee: ^98), (callee: ^5)), refs: (^81)))) ; guid = 4160688365499400425
^23 = gv: (name: "_ZN4core5slice14from_raw_parts17h1aa1aebb514c1027E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 28, calls: ((callee: ^10), (callee: ^52), (callee: ^1), (callee: ^100)), refs: (^55, ^68, ^38)))) ; guid = 4406319620898449934
^24 = gv: (name: "_ZN48_$LT$$u5b$T$u5d$$u20$as$u20$core..fmt..Debug$GT$3fmt17h39bc7f0a6d42a2c4E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 19, calls: ((callee: ^97), (callee: ^20), (callee: ^73), (callee: ^76))))) ; guid = 4485454951399972624
^25 = gv: (name: "_ZN4core3ptr6unique15Unique$LT$T$GT$6as_ref17h5c87c40cabb0fec7E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 13, calls: ((callee: ^61))))) ; guid = 4586082050382184814
^26 = gv: (name: "__rust_dealloc") ; guid = 4639430271351303854
^27 = gv: (name: "_ZN5alloc5alloc15exchange_malloc17h264145ac6d203f21E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 38, calls: ((callee: ^60), (callee: ^104), (callee: ^103), (callee: ^48))))) ; guid = 4874224122342687850
^28 = gv: (name: "alloc32", summaries: (variable: (module: ^0, flags: (linkage: private, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), varFlags: (readonly: 1, writeonly: 1), refs: (^71)))) ; guid = 4997846244264859861
^29 = gv: (name: "alloc2", summaries: (variable: (module: ^0, flags: (linkage: private, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), varFlags: (readonly: 1, writeonly: 1)))) ; guid = 5385622827435381517
^30 = gv: (name: "_ZN4core3ptr13drop_in_place17hb53d219ce4265296E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 4))) ; guid = 5445253071503935434
^31 = gv: (name: "_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h0fd8c52619dd8f0aE") ; guid = 5525089888531772078
^32 = gv: (name: "_ZN62_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..AllocRef$GT$7dealloc17h3825975e1eb1fd39E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 25, calls: ((callee: ^46), (callee: ^48), (callee: ^82))))) ; guid = 5571841029153017873
^33 = gv: (name: "_ZN4core3ptr7mut_ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$7is_null17hfb3183277fc6245eE") ; guid = 5702282497933615293
^34 = gv: (name: "_ZN50_$LT$T$u20$as$u20$core..convert..From$LT$T$GT$$GT$4from17h7092642b3480d3e7E") ; guid = 5876725392673301142
^35 = gv: (name: "_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17hf5557d2830fe6f05E") ; guid = 5922237121009088232
^36 = gv: (name: "vtable.1", summaries: (variable: (module: ^0, flags: (linkage: private, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), varFlags: (readonly: 1, writeonly: 1), refs: (^53, ^31)))) ; guid = 5950401402379108690
^37 = gv: (name: "_ZN4core3ptr6unique15Unique$LT$T$GT$13new_unchecked17hc582b72fbbf1790dE") ; guid = 6107323122762460235
^38 = gv: (name: "alloc30", summaries: (variable: (module: ^0, flags: (linkage: private, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), varFlags: (readonly: 1, writeonly: 1)))) ; guid = 6167654077733540244
^39 = gv: (name: "llvm.assume") ; guid = 6385187066495850096
^40 = gv: (name: "_ZN61_$LT$alloc..vec..Vec$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17hffd7ab4e6e5ba82dE", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 11, calls: ((callee: ^43), (callee: ^24))))) ; guid = 6579599970197991312
^41 = gv: (name: "llvm.umul.with.overflow.i64") ; guid = 6837502597287762023
^42 = gv: (name: "_ZN4core3num12NonZeroUsize13new_unchecked17h5f2101f47de8d5b2E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 6))) ; guid = 6992564860673322199
^43 = gv: (name: "_ZN68_$LT$alloc..vec..Vec$LT$T$GT$$u20$as$u20$core..ops..deref..Deref$GT$5deref17h36511f1a6cab852fE", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 13, calls: ((callee: ^16), (callee: ^23))))) ; guid = 7613724599068357859
^44 = gv: (name: "_ZN4core3fmt8builders9DebugList5entry17h49d852d7c1cf8431E") ; guid = 7809197371365548835
^45 = gv: (name: "anon.510a20d41a8d11441005547d3619066c.0", summaries: (variable: (module: ^0, flags: (linkage: private, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), varFlags: (readonly: 1, writeonly: 1), refs: (^12)))) ; guid = 8461091241659336970
^46 = gv: (name: "_ZN4core5alloc6layout6Layout4size17hef4968c7788a7963E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 5))) ; guid = 8529283702743123162
^47 = gv: (name: "_ZN3std2io5stdio6_print17h186982c4ac04813bE") ; guid = 8715080523481781050
^48 = gv: (name: "_ZN4core3ptr8non_null16NonNull$LT$T$GT$6as_ptr17h88b5fbb7bea35fd2E") ; guid = 8823477028677364843
^49 = gv: (name: "_ZN4core3ptr6unique15Unique$LT$T$GT$4cast17h373689ae3567ff9aE", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 8, calls: ((callee: ^19), (callee: ^37))))) ; guid = 9007021838230532229
^50 = gv: (name: "_ZN4core3ops8function6FnOnce9call_once17h9e0d738d466035bcE", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 23, calls: ((callee: ^11)), refs: (^81)))) ; guid = 9046297307692351507
^51 = gv: (name: "_ZN4core3ptr13drop_in_place17h6269e61f07cd105dE", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 27, calls: ((callee: ^86)), refs: (^81)))) ; guid = 9244085719453046881
^52 = gv: (name: "_ZN4core9panicking5panic17h08cbe4e12d51a418E") ; guid = 9403563471188249764
^53 = gv: (name: "_ZN4core3ptr13drop_in_place17hf8c5d4897aee99e4E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 4))) ; guid = 9647938754695700994
^54 = gv: (name: "__rust_alloc") ; guid = 10301051264606935346
^55 = gv: (name: "alloc29", summaries: (variable: (module: ^0, flags: (linkage: private, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), varFlags: (readonly: 1, writeonly: 1), refs: (^101)))) ; guid = 10453322193587415195
^56 = gv: (name: "_ZN5alloc7raw_vec15RawVec$LT$T$GT$14from_raw_parts17hcc10cc6b4ed589ffE", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 11, calls: ((callee: ^78))))) ; guid = 10827370228183814869
^57 = gv: (name: "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h3bb9379a37e9b5e3E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 7, calls: ((callee: ^50))))) ; guid = 10841112699737693238
^58 = gv: (name: "_ZN3std2rt19lang_start_internal17h09e25702c8631a09E") ; guid = 10888049609234573929
^59 = gv: (name: "_ZN4core5alloc6layout6Layout5align17h4710743b16bc1ec3E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 7, calls: ((callee: ^18))))) ; guid = 10925339681727215502
^60 = gv: (name: "_ZN4core5alloc6layout6Layout25from_size_align_unchecked17h4a9e124a64866af6E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 18, calls: ((callee: ^42))))) ; guid = 11138148945451799186
^61 = gv: (name: "_ZN4core3ptr6unique15Unique$LT$T$GT$6as_ptr17hcada7862f094e013E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 9))) ; guid = 11220718909678381931
^62 = gv: (name: "_ZN50_$LT$T$u20$as$u20$core..convert..Into$LT$U$GT$$GT$4into17h0a0f20c1f95e1419E") ; guid = 11233748547062266887
^63 = gv: (name: "__rustc_debug_gdb_scripts_section__", summaries: (variable: (module: ^0, flags: (linkage: linkonce_odr, notEligibleToImport: 0, live: 0, dsoLocal: 0, canAutoHide: 1), varFlags: (readonly: 1, writeonly: 1)))) ; guid = 11475342894608204461
^64 = gv: (name: "_ZN4core3ptr6unique15Unique$LT$T$GT$4cast17hd0db8cb4ed1e5d02E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 13, calls: ((callee: ^61), (callee: ^37))))) ; guid = 11788487974761319418
^65 = gv: (name: "_ZN2t34heap17he50e910211807e5cE", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 57, calls: ((callee: ^27), (callee: ^96), (callee: ^9), (callee: ^79), (callee: ^22), (callee: ^47)), refs: (^81, ^40, readonly ^45)))) ; guid = 11988098923669837438
^66 = gv: (name: "_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$11into_result17hc38e031618549405E") ; guid = 12005731280165984178
^67 = gv: (name: "_ZN5alloc5boxed12Box$LT$T$GT$4leak17hf65e4cb473ed6749E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 41, calls: ((callee: ^61))))) ; guid = 12128452505314549777
^68 = gv: (name: "alloc27", summaries: (variable: (module: ^0, flags: (linkage: private, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), varFlags: (readonly: 1, writeonly: 1)))) ; guid = 12137960346294816003
^69 = gv: (name: "_ZN5alloc5alloc12alloc_zeroed17hd16472e9ffeccab0E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 12, calls: ((callee: ^46), (callee: ^59), (callee: ^6))))) ; guid = 12733949883080180938
^70 = gv: (name: "_ZN4core3ptr6unique15Unique$LT$T$GT$13new_unchecked17h8ddd6ca994aafd6fE", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 8))) ; guid = 12814760348221189785
^71 = gv: (name: "alloc31", summaries: (variable: (module: ^0, flags: (linkage: private, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), varFlags: (readonly: 1, writeonly: 1)))) ; guid = 13096467677699226885
^72 = gv: (name: "_ZN5alloc3vec12Vec$LT$T$GT$10as_mut_ptr17hf71855b8cc411b38E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 13, calls: ((callee: ^7), (callee: ^33))))) ; guid = 13234903568478697863
^73 = gv: (name: "_ZN4core3fmt8builders9DebugList7entries17had1afd429741e4d2E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 77, calls: ((callee: ^105), (callee: ^85), (callee: ^44)), refs: (^81, ^36)))) ; guid = 13504577416312216571
^74 = gv: (name: "llvm.dbg.declare") ; guid = 13513223491971101989
^75 = gv: (name: "_ZN2t34main17h770501928fb2de42E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 3, calls: ((callee: ^65))))) ; guid = 13545441307923251776
^76 = gv: (name: "_ZN4core3fmt8builders9DebugList6finish17h0bd8e1f91de79e72E") ; guid = 14048203244866940863
^77 = gv: (name: "_ZN3std3sys4unix7process14process_common8ExitCode6as_i3217hc2578c04f095b037E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 5))) ; guid = 14096087134258154691
^78 = gv: (name: "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$17from_raw_parts_in17h1489e32a0daf47edE", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 36, calls: ((callee: ^70)), refs: (^81)))) ; guid = 14322775216288086809
^79 = gv: (name: "_ZN4core3fmt9Arguments6new_v117h0eff704c401da8f4E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 33))) ; guid = 14451779953845447880
^80 = gv: (name: "_ZN77_$LT$alloc..raw_vec..RawVec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h667701eba3543d10E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 36, calls: ((callee: ^88), (callee: ^32))))) ; guid = 14748699106051565772
^81 = gv: (name: "rust_eh_personality") ; guid = 14807195490537628141
^82 = gv: (name: "_ZN5alloc5alloc7dealloc17hdbb4828ab2871b7dE", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 14, calls: ((callee: ^46), (callee: ^59), (callee: ^26))))) ; guid = 15009717248174163201
^83 = gv: (name: "_ZN4core6option15Option$LT$T$GT$5ok_or17h999f61165d24a571E") ; guid = 15174513250987252238
^84 = gv: (name: "_ZN4core3ptr8non_null16NonNull$LT$T$GT$3new17h792254e09955eb57E") ; guid = 15385498584659981726
^85 = gv: (name: "_ZN85_$LT$core..slice..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h99bcc143fdaa2301E") ; guid = 15435653159954919260
^86 = gv: (name: "_ZN5alloc5alloc8box_free17h92feb61dba2592c5E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 48, calls: ((callee: ^25), (callee: ^60), (callee: ^64), (callee: ^62), (callee: ^32))))) ; guid = 15514886265207798852
^87 = gv: (name: "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked17h95f6a7b155a1993bE") ; guid = 15604013421199694441
^88 = gv: (name: "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$14current_memory17h29a0e371622c4c5bE", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 74, calls: ((callee: ^60), (callee: ^49), (callee: ^62), (callee: ^52)), refs: (^28, ^4)))) ; guid = 15706452823579208710
^89 = gv: (name: "_ZN73_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17h702edbf1f0ba73baE") ; guid = 15784065283289491964
^90 = gv: (name: "main", summaries: (function: (module: ^0, flags: (linkage: external, notEligibleToImport: 0, live: 0, dsoLocal: 0, canAutoHide: 0), insts: 5, calls: ((callee: ^95)), refs: (^63, ^75)))) ; guid = 15822663052811949562
^91 = gv: (name: "_ZN4core5alloc6layout6Layout8dangling17hcdb81f93d89b8781E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 8, calls: ((callee: ^59), (callee: ^87))))) ; guid = 16371509216037258268
^92 = gv: (name: "vtable.0", summaries: (variable: (module: ^0, flags: (linkage: private, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), varFlags: (readonly: 1, writeonly: 1), refs: (^11, ^57, ^30)))) ; guid = 16528563570215754327
^93 = gv: (name: "_ZN5alloc5alloc5alloc17h2e7b42a5e27b448bE", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 12, calls: ((callee: ^46), (callee: ^59), (callee: ^54))))) ; guid = 16665495215582415809
^94 = gv: (name: "_ZN5alloc3vec12Vec$LT$T$GT$14from_raw_parts17h24529f0241d1b63fE", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 18, calls: ((callee: ^56))))) ; guid = 17255455221786233396
^95 = gv: (name: "_ZN3std2rt10lang_start17h6d4a7dc0ad4c0476E", summaries: (function: (module: ^0, flags: (linkage: external, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 13, calls: ((callee: ^58)), refs: (^92)))) ; guid = 17318618735646420475
^96 = gv: (name: "_ZN5alloc5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$8into_vec17h8f0ff62baaf1865fE", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 8, calls: ((callee: ^21))))) ; guid = 17324361324684348228
^97 = gv: (name: "_ZN4core3fmt9Formatter10debug_list17h08201c2a736b664eE") ; guid = 17371357417892722442
^98 = gv: (name: "_ZN66_$LT$alloc..vec..Vec$LT$T$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h85f87b8320454e7eE", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 12, calls: ((callee: ^72), (callee: ^2))))) ; guid = 17455282381192320558
^99 = gv: (name: "_ZN4core3num23_$LT$impl$u20$usize$GT$11checked_mul17h3d82c6e973ce4761E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 32, calls: ((callee: ^13))))) ; guid = 17592194476387901084
^100 = gv: (name: "_ZN4core3ptr20slice_from_raw_parts17h286fba5d8a605140E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 27))) ; guid = 17844468506714804993
^101 = gv: (name: "alloc28", summaries: (variable: (module: ^0, flags: (linkage: private, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), varFlags: (readonly: 1, writeonly: 1)))) ; guid = 17987179147092295516
^102 = gv: (name: "_ZN68_$LT$std..process..ExitCode$u20$as$u20$std..process..Termination$GT$6report17h870f4d10f7079208E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 5, calls: ((callee: ^77))))) ; guid = 18007454595437500699
^103 = gv: (name: "_ZN5alloc5alloc18handle_alloc_error17h1c4ca6cc77cf210bE") ; guid = 18273520671885173917
^104 = gv: (name: "_ZN62_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..AllocRef$GT$5alloc17h545ef1d2b7748796E", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 104, calls: ((callee: ^46), (callee: ^91), (callee: ^69), (callee: ^93), (callee: ^84), (callee: ^83), (callee: ^66), (callee: ^34), (callee: ^89))))) ; guid = 18313515902223406211
^105 = gv: (name: "_ZN63_$LT$I$u20$as$u20$core..iter..traits..collect..IntoIterator$GT$9into_iter17hbb686c5e7d86cbdeE", summaries: (function: (module: ^0, flags: (linkage: internal, notEligibleToImport: 0, live: 0, dsoLocal: 1, canAutoHide: 0), insts: 8))) ; guid = 18401462801413668586
